如何在 Excel 中將數字拼寫或轉換為英文單詞?
在 Excel 中將數字轉換為其英文單詞等價形式是一項非常有價值的技能,特別是在財務報告、發票或支票製作時。雖然 Excel 沒有內建的函數來實現此功能,但有多種方法可以達成。本文將引導您了解在 Excel 中將數字轉換為單詞的最有效方式,並提供一些優化技巧。
使用 VBA 程式碼將數字拼寫或轉換為英文單詞
以下長段的 VBA 程式碼可幫助您將數字拼寫為文字字串。請按照以下步驟操作:
1. 按住「ALT + F11」鍵,打開「Microsoft Visual Basic for Applications」視窗。
2. 點擊「插入」>「模組」,並將以下巨集貼到模組視窗中。
VBA:在 Excel 中將貨幣數字拼寫為英文單詞
Function SpellNumberToEnglish(ByVal pNumber)
'Updateby20131113
Dim Dollars, Cents
arr = Array("", "", " Thousand ", " Million ", " Billion ", " Trillion ")
pNumber = Trim(Str(pNumber))
xDecimal = InStr(pNumber, ".")
If xDecimal > 0 Then
Cents = GetTens(Left(Mid(pNumber, xDecimal + 1) & "00", 2))
pNumber = Trim(Left(pNumber, xDecimal - 1))
End If
xIndex = 1
Do While pNumber <> ""
xHundred = ""
xValue = Right(pNumber, 3)
If Val(xValue) <> 0 Then
xValue = Right("000" & xValue, 3)
If Mid(xValue, 1, 1) <> "0" Then
xHundred = GetDigit(Mid(xValue, 1, 1)) & " Hundred "
End If
If Mid(xValue, 2, 1) <> "0" Then
xHundred = xHundred & GetTens(Mid(xValue, 2))
Else
xHundred = xHundred & GetDigit(Mid(xValue, 3))
End If
End If
If xHundred <> "" Then
Dollars = xHundred & arr(xIndex) & Dollars
End If
If Len(pNumber) > 3 Then
pNumber = Left(pNumber, Len(pNumber) - 3)
Else
pNumber = ""
End If
xIndex = xIndex + 1
Loop
Select Case Dollars
Case ""
Dollars = "No Dollars"
Case "One"
Dollars = "One Dollar"
Case Else
Dollars = Dollars & " Dollars"
End Select
Select Case Cents
Case ""
Cents = " and No Cents"
Case "One"
Cents = " and One Cent"
Case Else
Cents = " and " & Cents & " Cents"
End Select
SpellNumberToEnglish = Dollars & Cents
End Function
Function GetTens(pTens)
Dim Result As String
Result = ""
If Val(Left(pTens, 1)) = 1 Then
Select Case Val(pTens)
Case 10: Result = "Ten"
Case 11: Result = "Eleven"
Case 12: Result = "Twelve"
Case 13: Result = "Thirteen"
Case 14: Result = "Fourteen"
Case 15: Result = "Fifteen"
Case 16: Result = "Sixteen"
Case 17: Result = "Seventeen"
Case 18: Result = "Eighteen"
Case 19: Result = "Nineteen"
Case Else
End Select
Else
Select Case Val(Left(pTens, 1))
Case 2: Result = "Twenty "
Case 3: Result = "Thirty "
Case 4: Result = "Forty "
Case 5: Result = "Fifty "
Case 6: Result = "Sixty "
Case 7: Result = "Seventy "
Case 8: Result = "Eighty "
Case 9: Result = "Ninety "
Case Else
End Select
Result = Result & GetDigit(Right(pTens, 1))
End If
GetTens = Result
End Function
Function GetDigit(pDigit)
Select Case Val(pDigit)
Case 1: GetDigit = "One"
Case 2: GetDigit = "Two"
Case 3: GetDigit = "Three"
Case 4: GetDigit = "Four"
Case 5: GetDigit = "Five"
Case 6: GetDigit = "Six"
Case 7: GetDigit = "Seven"
Case 8: GetDigit = "Eight"
Case 9: GetDigit = "Nine"
Case Else: GetDigit = ""
End Select
End Function
3. 然後保存程式碼,返回工作表,在相鄰的單元格 B2 中輸入公式 =SpellNumberToEnglish(A2),見截圖:
4. 然後按下 Enter 鍵,選擇單元格 C2,然後將填滿控制點拖動到包含該公式的範圍,根據需要進行調整。所有貨幣數字都已拼寫為英文單詞。見截圖:
使用 Kutools for Excel 將數字拼寫或轉換為英文單詞
通過使用 Kutools for Excel 簡化您的 Excel 任務並提高生產力。其強大的數字轉換為單詞功能提供了超過 40 種貨幣轉換選項,讓您可以輕鬆地將數字轉換為美元、人民幣或其他任何貨幣的文字表示,只需幾次點擊即可完成。
1. 選擇要拼寫的數字範圍,然後點擊「Kutools」>「文字」>「數字轉單詞」。
2. 在彈出的對話框中,從「語言」中選擇「英文」。您可以在右側的「預覽」窗格中預覽結果。見截圖:
3. 然後點擊「確定」或「應用」。所有價格數字都已在原始範圍內被轉換為文字字串。
備註:如果您只想將數字轉換為英文單詞(非貨幣),請勾選「不轉換為貨幣」複選框。
通過遵循本指南中的步驟和優化建議,您可以高效地將數字轉換為單詞,並簡化您的工作流程。無論您是準備財務報告還是創建發票,掌握這項技能將節省您的時間和精力。如果您對探索更多 Excel 技巧感興趣,我們的網站提供了數千個教程。
最佳辦公效率工具
🤖 | Kutools AI 助手:基於智能執行方式革新數據分析:智能執行 | 生成代碼 | 創建自訂公式 | 分析數據並生成圖表 | 調用 Kutools 函數… |
熱門功能:查找、標記重複值或識別重複項 | 刪除空行 | 合併列或單元格而不丟失數據 | 四捨五入無需公式 ... | |
高級 LOOKUP: 多條件 VLookup | 多值 VLookup | 多表查找 | 模糊查找 .... | |
高級下拉列表:快速創建下拉列表 | 依賴下拉列表 | 多選下拉列表 .... | |
列管理器: 添加特定數量的列 | 移動列 | 切換隱藏列的可見狀態 | 比較區域和列 ... | |
特色功能:網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿與工作表管理器 | 資源庫(自動文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按列表發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/斜體/刪除線...) ... | |
頂級 15 種工具集: 12 個文本工具(添加文本、刪除特定字符、...) | 50+ 圖表 類型(甘特圖、...) | 40+ 實用 公式(基於生日計算年齡、...) | 19 個插入工具(插入QR碼、根據路徑插入圖片、...) | 12 個轉換工具(金額轉大寫、匯率轉換、...) | 7 個合併與分割工具(高級合併行、分割儲存格、...) | ... 還有更多 |
使用 Kutools for Excel 提升您的 Excel 技巧,體驗前所未有的高效。 Kutools for Excel 提供超過 300 種高級功能來提高生產力並節省時間。 點擊這裡獲取您最需要的功能...
Office Tab 將標籤式界面帶到 Office,讓您的工作更加輕鬆
- 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中啟用標籤式編輯和閱讀。
- 在同一窗口的新標籤中打開和創建多個文檔,而不是在新窗口中。
- 將您的生產力提高 50%,每天為您減少數百次鼠標點擊!