快捷搜索:  汽车  科技

excel如何将数字金额变成大写(负数的数字转换成大写金额)

excel如何将数字金额变成大写(负数的数字转换成大写金额)函数意思:使用MOD求余函数,让数字除以1得到它的余数也就是小数部分,使用函数TEXT将其转换成大写数字,面对负数的时候,这个公式也有问题,负数求余,除数应该修改为“-1”。函数公式:TEXT(MOD(A3 1)*100 "[DBNUM2]0角0分")函数公式的意思:先将数字转换成正数,然后取出整数部分,用TEXT函数转换成大写数字,后面添加元,遇到负数的情况,还得再处理。修改函数公式,在前面添加IF判断条件,如果数字小于0,则在前面添加“负”字。接下来是小数部分的转换

大家好,在财务上我们经常会将小写的金额转换成大写的金额,利用EXCEL的单元格格式或是内置的函数都只能针对整数部分进行转换,如果遇到有多位小数、整数、负数等混合的数据,上面两种办法都无法实现,今天我们使用组合函数的方式来解决这一问题。

本案例中多位小数采用的是四舍五入原则。

excel如何将数字金额变成大写(负数的数字转换成大写金额)(1)

先来拆解函数公式,将输入的数字分为整数和小数部分,先看整数部分:

函数公式:TEXT(INT(ABS(A3)) "[DBNUM2]")&"元"

函数公式的意思:先将数字转换成正数,然后取出整数部分,用TEXT函数转换成大写数字,后面添加元,遇到负数的情况,还得再处理。

excel如何将数字金额变成大写(负数的数字转换成大写金额)(2)

修改函数公式,在前面添加IF判断条件,如果数字小于0,则在前面添加“负”字。

excel如何将数字金额变成大写(负数的数字转换成大写金额)(3)

接下来是小数部分的转换

函数公式:TEXT(MOD(A3 1)*100 "[DBNUM2]0角0分")

函数意思:使用MOD求余函数,让数字除以1得到它的余数也就是小数部分,使用函数TEXT将其转换成大写数字,面对负数的时候,这个公式也有问题,负数求余,除数应该修改为“-1”。

excel如何将数字金额变成大写(负数的数字转换成大写金额)(4)

于是修改函数公式:SUBSTITUTE(IF(A3<0 TEXT(MOD(A3 -1)*100 "[DBNUM2]0角0分") TEXT(MOD(A3 1)*100 "[DBNUM2]0角0分")) "-" "")

函数公式意思:先用IF条件判断,如果小于1的数字,则MOD函数的除数是“-1”,否则就是“1”,由于负数的MOD余数也是负数,需要用SUBSTITUTE函数将前面的符号“-”去除。

excel如何将数字金额变成大写(负数的数字转换成大写金额)(5)

观察下表格里的小数部分的转换情况,里面的“零角零分”“零角壹分”“壹角零分”都是书写不规范的,需要替换掉。

excel如何将数字金额变成大写(负数的数字转换成大写金额)(6)

有三种情况需要替换,故使用了三次“SUBSTITUTE”函数。

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(IF(A6<0 TEXT(MOD(A6 -1)*100 "[DBNUM2]0角0分") TEXT(MOD(A6 1)*100 "[DBNUM2]0角0分")) "-" "") "零角零分" "整") "零分" "整") "零角" "零")

excel如何将数字金额变成大写(负数的数字转换成大写金额)(7)

最后将整数和小数部分的函数合在一起,组成完整的函数公式“=IF(A3<0 "负" "")&TEXT(INT(ABS(A3)) "[DBNUM2]")&"元"&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(IF(A3<0 TEXT(MOD(A3 -1)*100 "[DBNUM2]0角0分") TEXT(MOD(A3 1)*100 "[DBNUM2]0角0分")) "-" "") "零角零分" "整") "零分" "整") "零角" "零")”。

函数公式比较长,理解起来其实也不难,不想理解的,直接拿去套用即可。

excel如何将数字金额变成大写(负数的数字转换成大写金额)(8)

猜您喜欢: