網上能查到許多将小寫金額轉變為中文大寫金額的公式,但我發現都多少存在一些不完美。一是轉換後的中文大寫金額不符合規範,如123元,顯示的是“壹佰貳拾叁元零角零分,0.86元,顯示的是“零元捌角陸分”等;二是有些公式對金額為負數的并且含小數點的,因計算的進位關系,會出現轉換錯誤,如-99.15,顯示的是“-壹佰元捌角伍分”等。三是如果小數點後的位數超過2位,涉及到四舍五入的數字也會發生轉換錯誤。
經過認真的分析,寫出了一個比較完美的excel小寫金額轉變為中文大寫金額的公式,目前暫未發現轉換結果存在不妥的現象,請老鐵們驗證并提出寶貴意見
假設小寫金額數字在A2,那麼在B2輸入公式:=IF(A2=0,"零",IF(ROUND(ABS(A2),2)<1,"",TEXT(INT(ROUND(ABS(A2),2)),"[dbnum2]")&"元")&IF(INT(ROUND(ABS(A2),2)*10)-INT(ROUND(ABS(A2),2))*10=0,IF(INT(ROUND(ABS(A2),2))*(INT(ROUND(ABS(A2),2)*100)-INT(ROUND(ABS(A2),2)*10)*10)=0,"","零"),TEXT(INT(ROUND(ABS(A2),2)*10)-INT(ROUND(ABS(A2),2))*10,"[dbnum2]")&"角")&IF((INT(ROUND(ABS(A2),2)*100)-INT(ROUND(ABS(A2),2)*10)*10)=0,"整",TEXT((INT(ROUND(ABS(A2),2)*100)-INT(ROUND(ABS(A2),2)*10)*10),"[dbnum2]")&"分"))
.
2、向下複制公式,輸入不同類型的數字測試,沒毛病。
這個公式寫完一遍,絕對就不想寫第二遍了,頭暈!覺得還能用就直接粘貼走,修改一下小寫金額所在的單元格位置就行了。最後發現了一個問題,對于空單元格,大寫金額竟然也是“零”,算了,不改了,就這樣吧。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!