我在網上複製了很多公式,但統統不成功,只有元整但仍然是阿拉伯數字;經過一番研究,終於發現各個版本都需要微調格式;如果你也不會,可以和我一起看看哦。
很多做財務工作的盆友
一直被人民幣大寫金額所困擾
如果經常手寫
重複
浪費時間
還寫錯
小編深深記得寫外匯揣著小筆筆
在銀行櫃檯前的恐懼
所以!噹噹當!
親測有效
方法一
利用excel自帶的數字格式 但是
沒有辦法和元角分連結
B2=前面單元格 調整數字格式就行
方法二
v模式轉換 先打v再打數字
可以輕易選 財務也可以
但不能批量 只能一個一個來
方法三
公式法-複製以下公式 但是需要進行微調
通用公式
公式一=SUBSTITUTE(IF(RIGHT(FIXED(A1)*100,2)*1=0,TEXT(FIXED(A1),"[dbnum2]")&"元整",SUBSTITUTE(SUBSTITUTE(REPLACE(TEXT(FIXED(A1),"[dbnum2]"),LEN(TEXT(FIXED(A1),"[dbnum2]")),0,"角")&"分",".","元"),"零角","零")),"-","負")
小編在excel 2010 英文版中發現DBNUM2不適用,
所以
先在數字格式中查到本版本中的數字格式的代碼
現用方法一中選好數字格式後點擊自定義
即可看到當前版本大寫數字代碼
將上述數字格式替換原先的dbnum2,即可
形成
公式二=SUBSTITUTE(IF(RIGHT(FIXED(A1)*100,2)*1=0,TEXT(FIXED(A1),"[DBNum2][$-zh-CN]General")&"元整",SUBSTITUTE(SUBSTITUTE(REPLACE(TEXT(FIXED(A1),"[DBNum2][$-zh-CN]General"),LEN(TEXT(FIXED(A1),"[DBNum2][$-zh-CN]General")),0,"角")&"分",".","元"),"零角","零")),"-","負")
其他的版本也可以自己操作
還可以複製以下公式試試,不過都需要相應調整
=IF(AND(A1<=-0.01,A1>=-0.99),"負","")&SUBSTITUTE(SUBSTITUTE(TEXT(TRUNC(A1),"[dbnum2]G/通用格式元;負[dbnum2]G/通用格式元")&TEXT(RIGHT(FIXED(A1),2),"[dbnum2]0角0分;[dbnum2]0角;[dbnum2]整"),"零角","零"),"零分",)
=SUBSTITUTE(SUBSTITUTE(TEXT(INT(A1),"[DBNum2][$-804]G/通用格式元"&IF(INT(A1)=A1,"整",""))&TEXT(MID(A1,FIND(".",A1&".0")+1,1),"[DBNum2][$-804]G/通用格式角")&TEXT(MID(A1,FIND(".",A1&".0")+2,1),"[DBNum2][$-804]G/通用格式分"),"零角","零"),"零分","")
方法四
VBA-同樣DBNUM2需要修改
但只能用於當前工作簿
要保存成xls/xlsm的格式哦
alt+F11進入VBA模板
插入模板-新模板
複製代碼
Public Function RMBDX(M)
'人民幣大寫函數
RMBDX = Replace(Application.Text(Round(M + 0.00000001, 2), "[DBnum2]"), ".", "元")
RMBDX = IIf(Left(Right(RMBDX, 3), 1) = "元", Left(RMBDX, Len(RMBDX) - 1) & "角" & Right(RMBDX, 1) & "分", IIf(Left(Right(RMBDX, 2), 1) = "元", RMBDX & "角整", IIf(RMBDX = "零", "", RMBDX & "元整")))
RMBDX = Replace(Replace(Replace(Replace(RMBDX, "零元零角", ""), "零元", ""), "零角", "零"), "-", "負")
End Function
返回excel模式 輸入=RMBDX(單元格)測試下
以上這些方式你都會了嗎?當各有各的優缺點時可以好好選擇哦
關於為什麼有些人說網絡格式無法使用現在也了解了吧
問就是雙十一沉迷買買買 沒有寫
不過也沒人問吧
表情包來源於網絡哦
公式格式也大部分來源於網絡
整理測試也很辛苦
點讚關注支持下