excel表格人民幣阿拉伯數(shù)字轉中文大寫
excel表格人民幣阿拉伯數(shù)字轉中文大寫
之前有一篇文章,里面提到人民幣數(shù)字轉中文大寫的一種方法:NUMBERSTRING函數(shù),但:NUMBERSTRING函數(shù)的局限是:僅能計算整數(shù),小數(shù)部分四舍五入。
如下圖:
設置單元格格式的缺陷
設置單元格格式,可以設置成【特殊】——【中文大寫數(shù)字】,但小數(shù)部分只能“逐字直譯”成大寫,不能寫成“幾角幾分”。
以上兩種方法不行,只能求助函數(shù)了。
函數(shù)實現(xiàn)
公式
=SUBSTITUTE(SUBSTITUTE(IF(-RMB(A2,2),TEXT(A2,”;負”)&TEXT(INT(ABS(A2)+0.5%),”[dbnum2]G/通用格式元;;”)&TEXT(RIGHT(RMB(A2,2),2),”[dbnum2]0角0分;;整”),”零元整”),”零角”,IF(A2^2<1,,”零”)),”零分”,”整”)
公式分步解析
-RMB(A2,2)
按人民幣格式將數(shù)值四舍五入到兩位數(shù)并轉換成文本;
TEXT(A2,”;負”)
如果A2的金額小于0,則返回字符“負”;
TEXT(INT(ABS(A2)+0.5%),”[dbnum2]G/通用格式元;;”)
金額取絕對值,整數(shù)部分轉換為大寫,+0.5%避免0.999元等的情況下計算出現(xiàn)錯誤;
TEXT(RIGHT(RMB(A2,2),2),”[dbnum2]0角0分;;整”)
金額小數(shù)部分轉換為大寫;
IF(-RMB(A2,2),TEXT(A2,”;負”)&TEXT(INT(ABS(A2)+0.5%),”[dbnum2]G/通用格式元;;”)&TEXT(RIGHT(RMB(A2,2),2),”[dbnum2]0角0分;;整”),”零元整”)
IF進行判斷,如果金額不是0分,則返回大寫結果,否則返回零元整;
最后用兩個SUBSTITUTE函數(shù)替換“零角”為“零”,“零分”為“整”。
版權聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權內(nèi)容。
版權聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權內(nèi)容。