Excel中如何將小寫轉換為中文大寫?

2021-02-23 數據匠心

大家在使用Excel的時候,是否會遇到要把一個或一些阿拉伯數字轉換成中文大寫金額的計算要求呢?如果只是偶爾需要對少數幾個數字進行轉換,乾脆手工操作啦,但如果要進行轉換的數字較多或經常要轉換時,該怎麼辦呢?一向無往不勝的Excel能為你做些什麼呢?其實,這個不難,最少有三種方法可以實現。
一、 設置單元格格式:
用這個辦法能直接將阿拉伯數字轉換成中文大寫金額,而且操作簡單。右擊需要轉換的單元格,在彈出的快捷菜單中選擇「單元格格式」,然後在「數字」選項卡中選擇「自定義」,在「類型」中寫入「[DBNum2]G/通用格式"元"」後按確定即可。瞧,321是不是已經變成了「叄佰貳拾壹元」了?
可惜的是,這個辦法只能處理整數,而對帶有小數的數字無能為力。當然也有過朋友通過對此法進行一定的擴展而可以處理部分帶小數的數字,但效果不是很理想。


二、 利用中文大寫金額轉換函數:
先別急,這個函數你在Excel裡是找不到的,微軟畢竟不是大陸公司!這個函數被收集在本站開發的「Excel擴展函數集」裡,下載這個函數集,按說明進行安裝後,在Excel中運用一個叫EHDXRMB()的函數就可以將任意數字轉換成中文大寫金額。具體情況在此就不多進行介紹了。


三、 利用公式進行轉換:
我們先來了解一下什麼是Excel裡的公式與函數。

Excel之所以計算功能異常強大,百分之八十的功勞就在於用戶可以創建公式進行計算。所謂公式,實際上就是一個計算表達式(通常是包含函數與單元格引用的計算表達式)。在Excel裡,以「=」作為公式的標誌,在任何一個非文本值類型的單元格內,只要以「=」開頭,就必定是Excel公式,舉一最簡單的例子:如果A1、B1單元格的值為別為1和2,那麼如果在C3單元格內輸入「=A1+B1」,則Excel會自動將A1和B1的值相加,得到數值3,再返回給C3單元格。
再來說函數,函數其實就是包裝好的公式,它能根據你提供的參數自動進行複雜的計算,從而最大限度地減輕你的工作量。Excel內置了大量具備各種功能的函數,而且Excel還允許用戶自己添加函數(就像第二種方法中筆者寫的那個),這樣一來,在Excel裡幾乎沒有計算不出來的東西了。拿Excel中較常用到的SUM函數來說,如果要計算從A1到A100單元格的數值總和,寫公式時是用不著寫成「=A1+A2+A3+……A100」的,而只是簡單地寫成「=SUM(A1:A10)」就可以了。
Excel中有上百種函數,今天我們只講我們將要用到的幾個。其實所有這些函數的功能及詳細用法在Excel幫助文件裡都有介紹,當你遇到具體計算要求時,只要你點擊常用工具欄中「粘貼函數」按鈕,Excel會將所有的函數一一展示在你眼前,結合相應的幫助文件,你可以迅速挑選到一個適合你的函數。
1、IF函數
這是Excel裡最常用到的函數之一,它的功能是執行真假值判斷,根據邏輯測試的真假值返回不同的結果。其語法為IF(判斷表達式,當條件值為真時返回的值,當條件值為假時返回的值)。通俗地說,就是「如果……就……否則」的語法結構。比如A1單元格內為學生成績,我們現在要在B1單元格計算此成績是否及格,則公式為「=IF(A1<60,"不及格","及格")」,這樣一來,如果A1的數值小於60,B1就會顯示「不及格」,否則就顯示「及格」,是不是挺簡單?IF函數是允許嵌套的,也就是說IF函數裡面還可以有IF函數,這樣就可以執行比較複雜的判斷了。
2、TRUNC函數
這個函數可以截去指定位數的小數,如果將小數部分全部截去,就可以得到一個整數。要注意,截去是指直接捨棄,而不是四捨五入。比如A1單元格為21.147,要想在B1單元格內將它轉換為只有兩位小數的數字,則公式為「=TRUNC(A1,2)」,計算結果為21.14。
3、文本函數
文本函數是一系列對文本進行截取、合併、查找、轉換等操作的函數。下面簡單介紹一下下文中將用到的幾個:
A、LEN函數,用來計算指定文本的字符數,任何字符都將被計數,包括字母、數字、標點符號甚至空格。如「LEN("Excel")」等於5。
B、LEFT函數,可以從文本字符串的左邊開始截取指定長度的文本,如「LEFT("ExcelVBA",5)」等於「Excel」。
C、RIGHT函數,這個函數的功能與LEFT函數相似,只不過它是從右邊開始截取文本的。如「RIGHT("Office Excel",5)」等於「Excel」。
D、MID函數,這個函數還是用來截取文本的,但方式與上兩種都不同,它是從指定的位數開始截取指定長度的文本。「MID("Excel",3,3)」等於「cel」。
E、&函數
實際上這個函數的全稱應該是CONCATENATE,只不過這個名字太長不容易記住,所以乾脆就叫做&函數,它的功能是將幾個文本連結起來。比如「"電腦"&"界"&"應用"&"文萃"」等於「電腦界應用文萃」。
F、TEXT函數
這個函數其實也是一個文本函數,但因為在轉換中文大寫金額時這是一個起關鍵作用的函數,而在Excel幫助中又未詳述,所以要著重介紹一下。
TEXT函數可以將一數值轉換為按指定數字格式表示的文本,比如是否帶千分號,顯示幾位小數,是否帶貨幣符號,還有日期,時間等等。當然,最重要的是它可以將數值轉換為中文大寫,雖然不能直接將阿拉伯數字轉換為中文大寫金額,但已經足夠了。
TEXT的語法是TEXT(目標數值,格式),這個格式的種類及寫法與單元格格式中數字選項卡中顯示的相同。如TEXT(100.1,"0.00")=100.10。注意,任何數值只要被TEXT函數轉換過,不單單是顯示格式被改變了,內容也徹底變成了文本,不能再參與計算了。要將數值轉換為中文大寫,應該在函數中用「[DBNum2]」格式參數,這是在Excel幫助中沒提到的一個參數,但卻非常實用!
好了,刀我們就先磨到這裡,下面我們開始砍柴!
首先,我們要分析一下計算要求——在進行較複雜的公式創建之前,這是非常必要的一個步驟,就好像寫論文前要先列好提綱一樣,一定要先有好的規劃,才能有好的解決方案。我們已經知道,TEXT函數只能簡單地把數字轉換為中文大寫,而且只適合於整數,這也就是說,需要我們將目標數值分成元、角、分三段來轉換,然後再用&函數拼接在一起。標準的貨幣型數值包含兩位小數,因為目標數值是未知的,所以我們首先要將要轉換的數值轉換成"0.00"的格式,比如「588.1」,我們要把它轉換為「588.10」,這樣才便於後面進行分段轉換。還有一點要注意的地方是目標數值可能不只兩位小數,這時我們就要截掉多餘位數的小數(是截掉,可不是取整喲,不然的話,1.998可要變成2.00了!)
下面進行分段轉換,我們先假設一個某工作表中C2單元格中存在一個需要轉換的目標數值:5188.15,則各段計算公式分別為:
各部分轉換值

整數部分
=TEXT(TRUNC(C2),"[DBNUM2]")&"元"

角位
=TEXT(MID(C2,LEN(TEXT(TRUNC(C2,2),"0.00"))-1,1),"[DBNUM2]")&"角"

分位
=TEXT(RIGHT(TEXT(TRUNC(C2,2),"0.00"),1),"[DBNUM2]")&"分"

角分位
=D6&D7


我們把以上公式分別輸入到D5到D9單元格中,計算結果為:
各部分轉換值
單元格 整數部分
D5 伍仟壹佰捌拾捌元

角位
D6 壹角

分位
D7 伍分


角分位
D8 壹角伍分




會不會覺得公式太長?Excel的函數都是允許嵌套的,但無論怎麼嵌套,都有其固定的計算順序——與四則混合運算的計算順序一樣,先算最裡頭的一個括號,先乘除,後加減(邏輯函數例外)。按照這個規則,再加上我在前面已經把要用到的函數一一為大家進行了介紹,相信稍稍動動腦筋就能明白。萬一暫時難以理解也別著急,待一會兒在Excel裡親自試試就明白了。
好了,已經成功一半了,下面的工作是把分段轉換好的中文大寫金額連結起來,可別小看這個過程,這比剛才的工作要難得多!
對於需要進行轉換的數值,可能會有如下幾種類型:
一、 零
二、 整數
三、 既有小數部分又有整數部分的有理數
1、 只有一位小數
2、 兩位以上小數,但第一位為零
四、 純小數
1、 只有一位小數
2、 兩位以上小數,但第一位為零
對於不同的類型,連結方式是不同的,不然就會出現「零元」、「零角」、「零分」以及其他一些不符合中文大寫金額規則的連結結果。那樣的話就前功盡棄了。所以我們在分段轉換時不必考慮的這些問題在連結的時候就要好好考慮清楚了。現在IF函數要大派用場了,只有它才能進行嚴密的判斷,並根據判斷的情況進行相應的連結。
以目標數值5188.1在C2單元格為例,我們先列表說明要進行哪些判斷。在以後需要進行較複雜的判斷工作之前,建議大家也能這樣做,這樣有助於保持清醒的頭腦以組織條理分明的語句。
判斷公式

是否為零
=IF(TRUNC(C2,2)=0,TRUE,FALSE)

是否只有整數部分
=IF(TRUNC(C2,2)=TRUNC(C2),TRUE,FALSE)

是否沒有整數部分
=IF(TRUNC(C2)=0,TRUE,FALSE)

是否只有角位
=IF(RIGHT(TEXT(TRUNC(C2,2),"0.00"),1)="0",TRUE,FALSE)

是否只有分位
=IF(MID(C2,LEN(TEXT(TRUNC(C2,2),"0.00"))-1,1)="0",TRUE,FALSE)



我們把以上公式分別輸入到D11到D15單元格中,判斷結果如下表所列:
目標數值:5188.1 判斷結果
單元格

是否為零
FALSE
D11

是否只有整數部分
FALSE
D12

是否沒有整數部分
FALSE
D13

是否只有角
TRUE
D14

是否只有分
FALSE
D15




TRUE表示判斷結果為真,FALSE則為假。
好了,最後,我們要綜合以上各項判斷結果來寫出這個連結的公式:=IF(D11,"數值為零",IF(D12,D5&"整",IF(D13,IF(D14,D6&"整",IF(D15,D7,D8)),IF(D14,D5&D6&"整",IF(D15,D5&"零"&D7,D5&D8)))))。
好了,現在往C2單元格中輸入任意一個數字,看看是否能正確轉換出中文大寫金額來?本文的側重點在於告訴大家用怎樣的思路來解決問題,所以講解過程可能有些繁雜,而且整個轉換過程用到了十幾個單元格一步一步進行求解。這在實際工作中當然是不必要的。不過在對複雜問題進行計算時,用到的公式數量是於公式複雜程度成反比的,在大家對公式的運用還不是那麼熟練的時候,多用幾個單元格來創建公式也無妨,只要思路正確,最終結果肯定錯不了!當逐漸掌握公式及各種函數的用法後,就可以用最少的單元格(也就是最複雜的公式)來快速完成計算要求了。
最後還有兩個地方要提醒大家:
1、 Excel的公式中對函數的嵌套次數是有限制的,這就意味著有時候不得不用到一個以上的單元格來創建公式。就好像本文的轉換工作,用一個公式是算不出來的,因為要嵌套的層數太多!一個不行,我們可以用三個!設計思路完全相同,自己做做看!(在本人網站上有示範工作簿文件下載!)
2、 Excel的公式是不認識全形的標點符號的,所以大家在創建公式的時候務必將輸入法切換到半角下(尤其是輸入引號的時候),不然Excel會認為公式有錯誤喲!


相關焦點

  • Excel – 如何將數字轉換為小寫中文和大寫中文? - Excel學習世界
    如何將數字轉換為小寫中文、大寫中文?案例:將下圖 1 中的分數分別用小寫中文、大寫中文顯示,效果如下圖 2。解決方案:1.轉換為小寫中文:在 D2 單元格輸入以下公式 --> 下拉複製公式:=TEXT(C2,"[dbnum1]")2.
  • Excel表格裡,將小寫數字轉換成大寫數字,以WPS2019版為例
    有的學員提問,在excel表格的運算中,有時候涉及金額的時候,會遇到小寫阿拉伯數字會填寫,而對應的大寫數字會填寫錯,有沒有便捷簡單的技巧應對這個問題,下面我就把有關阿拉伯數字小寫轉換成大寫的小方法整理出來了。
  • 如何實現將C#字符串轉換為大寫或小寫?數組怎麼轉換為字符串?
    字符串大小寫轉換在.NET應用程式中,可以使用C#的ToLower()方法將字符串全部轉換為小寫,使用ToUpper()方法將字符串全部轉換為大寫。將str字符串的所有字母分別全部轉換為大寫和小寫。字母轉換大小寫-圖2圖2結果說明如下:(1). 第1行是使用ToLower()方法將所有字母全部轉換為小寫,中文不變。
  • 人民幣小寫如何快速轉換為大寫
    (一)WORD 方法一:藉助輸入法(我電腦上按的是搜狗輸入法),在中文狀態下,先輸入字母V。 方法二: 選中需要轉換的金額數字,在菜單欄「插入」中選擇「編號
  • 財務必備知識:如何在EXCEL裡將阿拉伯數字轉換為中文大寫金額
    在中文世界裡,只要是涉及到正規的財務類數據,基本就會標配一個小寫的阿拉伯數字,再加一個大寫的中文數字,這樣才能降低數據後期被人為篡改的可能性,保證合同等文件的有效性。平時我們在做EXCEL表格的時候,因為經常需要跟數據打交道,所以對數字進行大小寫轉換是繞不過去的一個技能,數字轉換靠手打肯定不太現實,這個不說麻不麻煩的問題,關鍵是出錯的概率太高,而重要的財務數據尤其不能出錯。
  • Excel中人民幣小寫金額轉換大寫技巧兩則
    南方網訊 要將人民幣小寫金額轉換成大寫格式,用Excel提供的格式,將自定義格式類型中的「[dbnum2]G/通用格式」改為「[dbnum2] G/通用格式「元」」來實現。
  • 必會Excel技能:小寫金額迅速轉大寫金額,告別逐字敲鍵盤!
    特別是Excel表格中做帳時,有些需要用大寫金額來代替,手動輸入的話很麻煩。保叔教你快速地將小寫金額轉為大寫金額,一起來學習吧!快速轉換成普通格式的方法1、打開excel,輸入一些數字,分為小寫金額和大寫金額。
  • Excel小寫金額轉大寫金額
    如果一個個填寫大寫金額,既耗時費力,又事半功倍。如果面對大量數據,則效率低下且極易出錯。今天向大家推薦三種方法,迅速搞定數字小寫金額轉大寫金額。方法一:設定單元格格式法上圖為待轉換的小寫數字,請轉為數字大寫金額。1、 將A列的數字小寫金額,複製到B列,單擊右鍵,選擇設置單元格。
  • excel數字小寫轉大寫公式的教程
    excel 數字小寫轉大寫公式的教程2  數字轉人民幣大寫形式的公式是:  =IF(B1<0,
  • excel如何把阿拉伯數字轉換成中文大寫
    我們在日常辦公中使用excel表格,會遇到希望顯示在表格上的數字是中文大寫的形式,特別是會計工作人員,那麼怎樣用excel實現這一功能呢在excel表格中選中需要轉換的阿拉伯數字所在的單元格,按住Ctrl +1,會彈出設置單元格對話框。
  • 如何快速將阿拉伯數字轉化為中文數字?excel表格輕鬆搞定!
    在工作中,有時候會遇到把阿拉伯數字轉轉換為中文簡體,中文繁體,如果數據很多,而且一時找不到轉換的軟體,試試電腦上的excel吧,一個函數即可搞定。方法一:單元格格式。如下圖所示,按ctrl+1打開設置單元格格式對話框,選擇特殊中的中文小寫數字和中文大寫數字即可把阿拉伯數字轉化為中文簡體字符和中文繁體字符。但是請注意編輯欄,轉化完之後單元格裡的內容實質還是阿拉伯數字,只是顯示效果為中文小寫或者大寫。這種轉換結果是不能把轉換後的文字複製到word表格、微信聊天窗口等。如果想要把單元格裡的「實質」內容也變成中文大小寫,就需要用到函數了。
  • 【Excel問伊答196】阿拉伯數字123等等轉成中文大寫或者中文小寫
    >
  • excel如何快速將數字轉為中文小寫?
    我們在使用excel時經常需要將數字轉為中文,如果還是傻傻地一個個手寫中文那麼效率是非常低的,那麼應該如何將數字快速轉為小寫中文呢?下面就來介紹一下。一、打開一份excel表格,我們希望將數字轉為小寫中文。
  • C語言小寫轉大寫,小寫字母轉換成大寫字母!
    在 C 語言中區分字母的大小寫,利用 ASCII 碼中大寫字母和小寫字母之間的轉換關係(差值為 32),可以將小寫字母轉換為大寫字母。
  • Excel 數字小寫金額轉大寫金額方法大全
    如果一個個填寫大寫金額,既耗時費力,又事半功倍。如果面對大量數據,則效率低下且極易出錯。今天向大家推薦三種方法,迅速搞定數字小寫金額轉大寫金額。上圖為待轉換的小寫數字,請轉為數字大寫金額。1、 將A列的數字小寫金額,複製到B列,單擊右鍵,選擇設置單元格。
  • Excel小寫轉大寫金額的幾種方法
    這也是一個很常見的問題了:如何將小寫金額轉為大寫金額。在Excel中有幾種實現方法,適合不同場景。
  • Excel金額小寫轉大寫,請學會這三招!
    將A列的數字小寫金額,複製到B列,單擊右鍵,選擇設置單元格格式。在左側的類別欄中,單擊:特殊,就會在右側出現類型,選擇中文大寫數字即可。     第1種方法Excel自動小寫轉大寫金額方法優勢在於速度快,不過如果帶轉換的小寫數字含有小數,則會出錯。該方法只適合整數的轉換。
  • excel如何快速將數字轉為中文大寫?
    我們在使用excel時經常需要將數字轉為中文,如果還是傻傻地一個個手寫中文那麼效率是非常低的,那麼應該如何將數字快速轉為中文呢?下面就來介紹一下。一、打開一份excel表格,我們希望將數字轉為大寫中文。
  • Excel教程:財務崗必會Excel技能!數字小寫金額轉大寫的妙招!
    中常見的數字小寫金額轉大寫金額的方法。之前有財務崗的小夥伴問過小雅這個問題,在工作中經常要填寫中文大寫金額,如果一個個填寫大寫金額,既耗時費力,又事倍功半。並且面對大量數據,效率低下且極易出錯。今天小雅就給大家整理出來一起學習。1、 將A列的數字小寫金額,複製到B列,單擊右鍵,選擇設置單元格。2、 在左側的類別欄中,單擊:特殊,就會在右側出現類型,選擇---中文大寫數字即可。
  • Excel數字轉換為大寫的幾種方法
    」       平時,在銀行填寫票據,寫收款收據等,都會涉及到寫大寫的數字,也就是用漢字來表示這個數字,有沒有覺得寫起來很麻煩呢,今天跟大家分享的就是如何通過Excel表格裡面的功能自動將這一串數字轉換為大寫的數字,方法有很多,看你習慣使用哪一種。