Excel知识自动生成中文大写金额的公式
2023/5/9 来源:不详Excel中自动生成中文大写金额的公式如下:
IF(MOD(A2,1)=0,TEXT(INT(A2),"[DBNUM2]")"元整",TEXT(INT(A2),"[DBNUM2]")"元"TEXT(MID(A2,LEN(INT(A2))+2,1),"[DBNUM2]D角")TEXT(MID(A2,LEN(INT(A2))+3,1),"[DBNUM2]D分"))
其中:A2为数字所在的单元格,可依据实际情况更改。
下面来解释一下这个公式,本文例子的演示环境为
硬件型号:华硕顽石6代FLFJ
操作系统软件:Windows10家庭中文版(版本号)
软件版本:MicrosoftOffice专业增强版(版本号16.0..)
如下图所示,要把左边的数字变成大写金额的形式,既有整数也有小数。
1、最外层是一个IF函数,这里所用到的判断条件是这个数字是不是一个整数,如果是整数,依据中文金额的表达方式,则返回“XX元整”;如果不是整数,则返回“XX元XX角XX分”。
判断数字是不是整数,用到的是MOD函数,它是一个取余函数,如果余数是0,说明数字是一个整数,如果余数不是0,说明数字不是整数。故这个IF函数的判断条件就是MOD(A2,1)=0
A2中的数字为整数时,条件成立;不是整数时,条件不成立。
2、A2单元格中数字为整数时,返回的内容为TEXT(INT(A2),"[DBNUM2]")"元整"
要转换的数值是A2单元格的整数部分,因为数字可能会保留小数,即是X.00的形式,因此,用INT函数来得到整数部分,即INT(A2);
[DBNUM2]是文本格式函数,即是数字转中文大写的意思;[DBNUM1]是数字转中文小写的意思。
TEXT(INT(A2),"[DBNUM2]")"元""整"的意思就是把数字转成中文大写,最后加上“元整”;
3、A2单元格中数字不是整数时,返回的内容为TEXT(INT(A2),"[DBNUM2]")"元"TEXT(MID(A2,LEN(INT(A2))+2,1),"[DBNUM2]D角")TEXT(MID(A2,LEN(INT(A2))+3,1),"[DBNUM2]D分"))
其中,TEXT(INT(A2),"[DBNUM2]")"元”是金额的整数部分大写;
TEXT(MID(A2,LEN(INT(A2))+2,1),"[DBNUM2]D角")当中,LEN(INT(A2))+2返回的是十分位即“角”所在数字中的第几位;MID(A2,LEN(INT(A2))+2,1)是提取A2中数字的十分位所对应的数字,即“角”所对应的数字;"[DBNUM2]D角"是将数字转成中文大写,并带着“角”字;
同样的道理,TEXT(MID(A2,LEN(INT(A2))+3,1),"[DBNUM2]D分"))当中,LEN(INT(A2))+3返回的是百分位,即“分”所在数字中的第几位;MID(A2,LEN(INT(A2))+3,1)是提取A2中数字的百分位所对应的数字,即“分”所对应的数字;"[DBNUM2]D分"是将数字转成中文大写,并带着“分”字。
大家可以直接将公式收藏起来,以后要用到生成中文大写金额时,可以直接复制粘贴使用。
本次的内容就是这样,欢迎大家收藏、点赞、转发!
相关阅读:
Excel表格中数字转中文大写怎么做?这里总有需要的那一种方法