萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 辦公室軟體 >  >> Excel 教學 >> Excel 綜合

Excel 人民幣小寫轉大寫金額:自訂格式與公式兩大完美解法

問題背景

Excel 內建 [DBNum2] 格式可轉中文大寫數字,但小數部分僅顯示「零玖圓」格式,不符財務「元/角/分」規範(如 6050.09 應為「陸仟零伍拾元零玖分」)。

方案一:三欄拆解法(直觀易維護)

假設 B1 為四捨五入至角分的小寫金額(如 6050.09)。

儲存格公式自訂格式顯示結果
B2(元) =IF(B1<0,"金額為負無效",INT(B1)) [DBNum2]("人民幣")G/通用格式"元" (人民幣)陸仟零伍拾元
C2(角) =IF(B1<0,"",INT(B1*10)-INT(B1)*10) [DBNum2]G/通用格式"角" 零角
D2(分) =IF(B1<0,"",INT(B1*100)-INT(B1*10)*10) [DBNum2]G/通用格式"分" 玖分

排版建議:B2 靠右、C2 無間距無邊框、D2 靠左,視覺上連成完整金額。

方案二:單一儲存格超級公式法(一次到位)

在 B2 輸入以下巢狀公式:

=IF(B1<0,"金額為負無效",
  IF(OR(B1=0,B1=""),"(人民幣)零元整",
  IF(B1<1,"(人民幣)",
     TEXT(INT(B1),"[DBNum2](人民幣)G/通用格式")&"元")
  )&
  IF(INT(B1*10)-INT(B1)*10=0,
     IF(INT(B1)*(INT(B1*100)-INT(B1*10)*10)=0,"","零"),
     TEXT(INT(B1*10)-INT(B1)*10,"[DBNum2]")&"角"
  )&
  IF((INT(B1*100)-INT(B1*10)*10)=0,"整",
     TEXT(INT(B1*100)-INT(B1*10)*10,"[DBNum2]")&"分"
  )
)

結果範例:(人民幣)陸仟零伍拾元零玖分。符合財務規範:有角無分顯示「整」、元角分皆零顯示「零元整」、零角自動顯示「零」。

維護建議

方案一易閱讀修改,適合模板固定格式;方案二緊湊,適合臨時計算。兩法皆可複製公式套用至其他列,若來源儲存格位置變更,可用「取代」批次更新公式中的參考位址。

copyright © 萬盛學電腦網 all rights reserved