Excel金額大寫公式詳解
人民幣大寫的公式很多,隨便百度就能找到一堆,但網上的公式多無原理解析,知其然而不知其所以然,用的時候只能將公式複製過去,總有幾分不完美
那麼一起來追根究底吧,長文預警,今天的內容1400字
================
先搜個金額大寫公式再就公式進行解析
網上相關公式太多,選個稍微短點的,公式如下 ▼
=TEXT(LEFT(RMB(A1),LEN(RMB(A1))-3),"[>0][dbnum2]G/通用格式元;[<0]負[dbnum2]G/通用格式元;;") & TEXT(RIGHT(RMB(A1),2),"[dbnum2]0角0分;;整")
表示完全看不懂
1、如何快速看懂長公式?
▼ Excel公式求值
Excel自帶公式求值,可查看公式每步計算結果,通過查看每步計算結果分析思路
在A1單元格中輸入小寫金額,B1中輸入以上公式
選中B1單元格,【公式】-【公式審核】-【公式求值】
運行求值,查看每一步運算結果,如下圖:
通過查看計算步驟得知,金額小寫轉為大寫主要通過格式轉換函數TEXT函數,將金額分兩部分轉換為大寫金額,整數部分大寫 小數點部分大寫
提到格式轉換,Excel單元格格式設置中就有金額大寫轉換
【數字】-【特殊】-【中文大寫數字】
如A1單元格金額201711.06單元格格式轉換後顯示為貳拾萬壹仟柒佰壹拾壹.零陸
距離我們想要的金額大寫很接近了,如果能將數字大寫格式轉換的代碼找到就可用於金額大寫中
2、如何查看格式轉換代碼?
▼ 點擊對應格式後,點擊自定義,顯示對應代碼
點擊 【特殊】-【中文大寫數字】後點擊自定義
代碼為【[DBNum2][$-804]G/通用格式】
其中[$-804]表示國家或地區(語言)編號,一般可以不填,可直接忽略
提取有用部分:[DBNum2]G/通用格式
其中[DBNum2]表示將數字大寫
G/通用格式表示以常規的數字顯示——數字不發生任何變化
金額大寫中,整數部分以元結尾,小數部分以角和分結尾▼
則整數部分 - [DBNum2]G/通用格式元
小數部分 - [DBNum2]0角0分
如果金額為負怎麼辦?
金額為負,則大寫時金額前面加負,如-2對應負貳元,整數部分金額需分兩種情況 ▼
① 為正數
[>0][dbnum2]G/通用格式元
② 為負數
[<0]負[dbnum2]G/通用格式元
OK,數字大小寫轉換已解決,整數部分和小數部分用不同的格式轉換代碼,那麼接下來需分別提取整數和小數部分
=========
金額格式一般為:xxxx.xx
① 小數部分:有且只有2位,最右邊2位數字,=right(A1,2)
② 整數部分:除掉小數部分剩餘為整數部分,整數部分位置在左邊,但長度不定,長度=總長度-小數位長度=len(A1)-3
小數位不是2個嗎怎麼減3?
小數點也佔一位
整數部分=left(A1,len(A1)-3 )
OK啦?
漏了一個格式轉換,A1單元格的內容為數字格式,金額大小寫為貨幣格式,需將數字轉換為貨幣格式,使用函數RMB
在A1單元格外嵌套個RMB函數
整數部分格式轉換:
=TEXT(LEFT(RMB(A1),LEN(RMB(A1))-3),"[>0][dbnum2]G/通用格式元;[<0]負[dbnum2]G/通用格式元;;")
小數部分格式轉換:
=TEXT(RIGHT(RMB(A1),2),"[dbnum2]0角0分;;整")
3、TEXT函數中的的分號;表示什麼內容呢?
三個分號分別將【正數;負數;零;文本】需要顯示的內容隔開
如果小數部分為0,則金額大寫時添加整
[dbnum2]0角0分;;整
正數 - [dbnum2]0角0分,用;間隔
負數 - 不顯示,用;間隔
零 - 顯示「整」
推薦閱讀:
※五行雙膽公式
※適合東方人的體重計算公式,你真超重了么?
※消除憂慮的奇妙公式
※使用excel 數組公式的注意事項
※Excel函數公式使用心得