Excel数字改货币大写函数公式Excel数字改货币大写函数公式,财务报销填单必备,财务报销填单必备
干了十五年账,填支票、开报销单,最烦的就是把阿拉伯数字一笔一划写成壹拾贰万叁仟肆佰伍拾陆元整。手抄慢不说,写错一个"拾"和"卅"就能让整张单子作废。后来把数字改成货币大写的函数公式摸透了,现在输入数字一秒出结果,再也不用对着字典翻"陆"和"六"到底该写哪个了。
Excel里实现这件事,核心思路是把数字按位拆开再拼汉字。用MID函数逐位取值,配合嵌套IF把0到9对应到"零壹贰叁肆伍陆柒捌玖"数字改成货币大写函数,再挂上"万亿千百十元角分"的单位数组。位数到了就跳过,遇到零位要判断是否连续多个零——连续多个零只写一个"零",这是最容易被绕进去的坑。

纯公式嵌套太深可读性差,更多人愿意用VBA封装一个叫RMB的自定义函数。表格里直接敲=RMB(A1),输个1005060出来就是"壹佰万零伍仟零陆拾元整"。末尾必须带"整"字,角分都是零时写"元整",有角无分时写"X角整"。我见过有人把100.50写成"壹佰元伍角"漏了"整",银行退票回来才发现问题。
除了Excel,Python加个映射表、Java用Hutool的CurrencyUtil,几十行也能搞定。但实际工作中还是Excel出场率最高——财务共享中心每天过几百张报销单,公式拉一下整列就全转完了。建议把验证好的函数存进公共模板,新人接手直接调用,省得每个办公室各写一套、口径还不统一。