之前有一篇文章,里面提到人民幣數(shù)字轉(zhuǎn)中文大寫的一種方法:NUMBERSTRING函數(shù),但:NUMBERSTRING函數(shù)的局限是:僅能計(jì)算整數(shù),小數(shù)部分四舍五入。
如下圖:

公式分步解析
-RMB(A2,2)
按人民幣格式將數(shù)值四舍五入到兩位數(shù)并轉(zhuǎn)換成文本;
TEXT(A2,”;負(fù)”)
如果A2的金額小于0,則返回字符“負(fù)”;
TEXT(INT(ABS(A2)+0.5%),”[dbnum2]G/通用格式元;;”)
金額取絕對(duì)值,整數(shù)部分轉(zhuǎn)換為大寫,+0.5%避免0.999元等的情況下計(jì)算出現(xiàn)錯(cuò)誤;
TEXT(RIGHT(RMB(A2,2),2),”[dbnum2]0角0分;;整”)
金額小數(shù)部分轉(zhuǎn)換為大寫;
IF(-RMB(A2,2),TEXT(A2,”;負(fù)”)&TEXT(INT(ABS(A2)+0.5%),”[dbnum2]G/通用格式元;;”)&TEXT(RIGHT(RMB(A2,2),2),”[dbnum2]0角0分;;整”),”零元整”)
IF進(jìn)行判斷,如果金額不是0分,則返回大寫結(jié)果,否則返回零元整;
最后用兩個(gè)SUBSTITUTE函數(shù)替換“零角”為“零”,“零分”為“整”。






