Excel數字小寫金額轉換漢字大寫金額公式在會計工作中是經常應用到的,它能提高工作效率和會計數據的準確性。
網上有很多設置Excel數字小寫金額轉漢字大寫金額公式的方法,基本上都很繁瑣,且功能不全面(對負金額不能轉換)。
本人在Excel會計工作實踐中,設計了一個數字小寫金額轉換漢字大寫金額的公式,公式僅500多個字符,個人感覺還很滿意,現拿出來供大家分享,不足之處,也請大家不吝賜教。
公式如下:
=IF(ROUND(A1,2)=0,"",IF(A1<0,"負","")&IF(ABS(A1)>=1,TEXT(INT(ROUND(ABS(A1),2)),"[dbnum2]")&"元","")&IF(VALUE(MID(RIGHT(TEXT((ABS(A1)*100+100),"###"),2),1,1))=0,IF(VALUE(RIGHT(TEXT(ABS(A1)*100,"###"),1))=0,"整",IF(ABS(A1)>=1,"零","")&TEXT(VALUE(RIGHT(TEXT(ABS(A1)*100,"###"),1)),"[dbnum2]")&"分"),IF(VALUE(RIGHT(TEXT(ABS(A1)*100,"###"),1))=0,TEXT(VALUE(MID(RIGHT(TEXT((ABS(A1)*100+100),"###"),2),1,1)),"[dbnum2]")&"角整",TEXT(VALUE(MID(RIGHT(TEXT((ABS(A1)*100+100),"###"),2),1,1)),"[dbnum2]")&"角"&TEXT(VALUE(RIGHT(TEXT(ABS(A1)*100,"###"),1)),"[dbnum2]")&"分")))
公式中A1為小寫金額所在單元格,實際使用中只需將其替換為實際小寫金額所在單元格即可,非常方便。
公式可以對正數、零(本公式轉換為空白,與支票一致,如需轉換為「零元整」,只需在公式第一個雙引號內加入即可)、負數(會計數據有時也涉及到)均可進行轉換。
最近,在網上看到高手設計的更簡潔的轉換公式,缺點是只能把「0」轉換為空白,不能轉換為「零元整」,公式如下:
=SUBSTITUTE(SUBSTITUTE(IF(-RMB(A1),IF(A1>0,,"負")&TEXT(INT(ABS(A1)+0.5%),"[dbnum2]G/通用格式元;;")&TEXT(RIGHT(RMB(A1,2),2),"[dbnum2]0角0分;;整"),),"零角",IF(A1^2<1,,"零")),"零分","整")
將以上兩個公式結合一下,達到既簡短,又能達到「0」的空白和「零元整」兩種(根據需要只能選其中一種)轉換結果的目的。公式如下:
=IF(ROUND(A1,2)=0,"",IF(A1<0,"負","")&IF(ABS(A1)>=1,TEXT(INT(ROUND(ABS(A1),2)),"[dbnum2]")&"元","")&SUBSTITUTE(SUBSTITUTE(TEXT(RIGHT(RMB(A1,2),2),"[dbnum2]0角0分;;整"),"零角",IF(A1^2<1 ,,"零")),"零分","整"))
以上三個公式的轉換效果是一樣的,如下圖所示: