How to quickly convert currency numbers to words in Excel?
When working with financial data in Excel, there may be times when you need to convert currency numbers into words, such as writing out check amounts. Unfortunately, Excel does not provide a built-in function for this, but there are two effective methods to achieve this. This article will guide you through both methods, helping you choose the best approach based on your needs.
Spell out currency numbers to words with VBA code
Spell out currency numbers to words with Kutools for Excel
Spell out currency numbers to words with VBA code
In Excel, you cannot quickly convert numbers to English words except VBA.
1. Press "Alt + F11" keys to open the "Microsoft Visual Basic for Application" window.
2. Click "Insert" > "Module" and paste below VBA to the new Module window.
VBA: Convert currency numbers to English words
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. Then save this code and close the window to go back to the worksheet, and select a blank cell type this formula: =SpellNumberToEnglish(A2) (A2 is the currency numbers), and press Enter key, then drag the fill handle down to apply this formula to the cells you need. See screenshots:



Spell out currency numbers to words with handy Spell Out Numbers function
For those who do not want to use VBA, Kutools for Excel provides a simple, one-click way to convert numbers into words. The "Numbers to Words" feature in Kutools for Excel supports converting numbers into words in over 40 different currency formats, making it an ideal solution for financial reporting and international transactions. With just a few clicks, users can transform numerical values into fully formatted currency text in multiple languages, including USD, EUR, GBP, JPY, CNY, and more, eliminating the need for manual conversions and reducing errors.
1. Select the currency numbers and click "Kutools" > "Content" > "Numbers to Words". See screenshot:
2. In the "Numbers to Currency Words" dialog, choose the language that you want to use; here I will select the "English" option from the "Languages" list box, see screenshot:
3. Click "OK" or "Apply". Then the currency numbers you selected have been converted to specific currency word.
Converting currency numbers into words in Excel can be done efficiently using either VBA or Kutools for Excel. By implementing either of these methods, you can automate financial reporting and eliminate manual typing errors. If you're interested in exploring more Excel tips and tricks, our website offers thousands of tutorials to help you master Excel.
Demo: Convert Currency Number To Words using Kutools for Excel
Best Office Productivity Tools
Supercharge Your Excel Skills with Kutools for Excel, and Experience Efficiency Like Never Before. Kutools for Excel Offers Over 300 Advanced Features to Boost Productivity and Save Time. Click Here to Get The Feature You Need The Most...
Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier
- Enable tabbed editing and reading in Word, Excel, PowerPoint, Publisher, Access, Visio and Project.
- Open and create multiple documents in new tabs of the same window, rather than in new windows.
- Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!