In order to provide clarity and ease of understanding, especially when dealing with financial or data-related documents, you will probably need to convert number to words in Excel. For instance, the use of words instead of numerical figures makes it easier for individuals who are not familiar with financial jargon to comprehend a report or spreadsheet, which may increase their productivity and confidence in using the application. Additionally, converting numbers to words eliminates errors that can arise from misreading or mis-entering numerical symbols. It also enhances precision and accuracy in expressing large sums of money since words convey the intended value more accurately than digits, particularly when rounding off decimal places. In summary, this feature offers stronger communication between users by conveying significant information more effectively and efficiently while reducing errors and increasing clarity in data analysis.
Natively, there is no function that converts number to words in excel in Microsoft Excel that convert numbers into words. Fortunately, you can do so by using a function in Visual Basic for Application. This function converts numbers and decimals to words with a formula. So, typing 1250.25 will return one thousand two hundred fifty and 25/100. This function can be very useful if you are using Microsoft Excel as a template to print receipts, purchase orders, or any kind of financial documents.
Steps to convert number to words in Excel
In order to create a VBA function to convert numbers into words, follow these steps:
- Open Microsoft Excel and press Alt + F11 to open the visual basic editor.
- On the Insert menu, create a new Module.
- Copy the following VBA code and paste it all into the new Module.
- Press Alt + Q to return to Microsoft Excel.
- The function is now ready to use.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 |
Function ConvertNumbersToWords(ByVal N As Currency) As String Const Thousand = 1000@ Const Million = Thousand * Thousand Const Billion = Thousand * Million Const Trillion = Thousand * Billion If (N = 0@) Then ConvertNumbersToWords = "zero": Exit Function Dim Buf As String: If (N < 0@) Then Buf = "negative " Else Buf = "" Dim Frac As Currency: Frac = Abs(N - Fix(N)) If (N < 0@ Or Frac <> 0@) Then N = Abs(Fix(N)) Dim AtLeastOne As Integer: AtLeastOne = N >= 1 If (N >= Trillion) Then Buf = Buf & EnglishDigitGroup(Int(N / Trillion)) & " trillion" N = N - Int(N / Trillion) * Trillion If (N >= 1@) Then Buf = Buf & " " End If If (N >= Billion) Then Buf = Buf & EnglishDigitGroup(Int(N / Billion)) & " billion" N = N - Int(N / Billion) * Billion If (N >= 1@) Then Buf = Buf & " " End If If (N >= Million) Then Buf = Buf & EnglishDigitGroup(N \ Million) & " million" N = N Mod Million If (N >= 1@) Then Buf = Buf & " " End If If (N >= Thousand) Then Buf = Buf & EnglishDigitGroup(N \ Thousand) & " thousand" N = N Mod Thousand If (N >= 1@) Then Buf = Buf & " " End If If (N >= 1@) Then Buf = Buf & EnglishDigitGroup(N) End If If (Frac = 0@) Then Buf = Buf & " exactly" ElseIf (Int(Frac * 100@) = Frac * 100@) Then If AtLeastOne Then Buf = Buf & " and " Buf = Buf & Format$(Frac * 100@, "00") & "/100" Else If AtLeastOne Then Buf = Buf & " and " Buf = Buf & Format$(Frac * 10000@, "0000") & "/10000" End If ConvertNumbersToWords = Buf End Function Private Function EnglishDigitGroup(ByVal N As Integer) As String Const Hundred = " hundred" Const One = "one" Const Two = "two" Const Three = "three" Const Four = "four" Const Five = "five" Const Six = "six" Const Seven = "seven" Const Eight = "eight" Const Nine = "nine" Dim Buf As String: Buf = "" Dim Flag As Integer: Flag = False Select Case (N \ 100) Case 0: Buf = "": Flag = False Case 1: Buf = One & Hundred: Flag = True Case 2: Buf = Two & Hundred: Flag = True Case 3: Buf = Three & Hundred: Flag = True Case 4: Buf = Four & Hundred: Flag = True Case 5: Buf = Five & Hundred: Flag = True Case 6: Buf = Six & Hundred: Flag = True Case 7: Buf = Seven & Hundred: Flag = True Case 8: Buf = Eight & Hundred: Flag = True Case 9: Buf = Nine & Hundred: Flag = True End Select If (Flag <> False) Then N = N Mod 100 If (N > 0) Then If (Flag <> False) Then Buf = Buf & " " Else EnglishDigitGroup = Buf Exit Function End If Select Case (N \ 10) Case 0, 1: Flag = False Case 2: Buf = Buf & "twenty": Flag = True Case 3: Buf = Buf & "thirty": Flag = True Case 4: Buf = Buf & "forty": Flag = True Case 5: Buf = Buf & "fifty": Flag = True Case 6: Buf = Buf & "sixty": Flag = True Case 7: Buf = Buf & "seventy": Flag = True Case 8: Buf = Buf & "eighty": Flag = True Case 9: Buf = Buf & "ninety": Flag = True End Select If (Flag <> False) Then N = N Mod 10 If (N > 0) Then If (Flag <> False) Then Buf = Buf & "-" Else EnglishDigitGroup = Buf Exit Function End If Select Case (N) Case 0: Case 1: Buf = Buf & One Case 2: Buf = Buf & Two Case 3: Buf = Buf & Three Case 4: Buf = Buf & Four Case 5: Buf = Buf & Five Case 6: Buf = Buf & Six Case 7: Buf = Buf & Seven Case 8: Buf = Buf & Eight Case 9: Buf = Buf & Nine Case 10: Buf = Buf & "ten" Case 11: Buf = Buf & "eleven" Case 12: Buf = Buf & "twelve" Case 13: Buf = Buf & "thirteen" Case 14: Buf = Buf & "fourteen" Case 15: Buf = Buf & "fifteen" Case 16: Buf = Buf & "sixteen" Case 17: Buf = Buf & "seventeen" Case 18: Buf = Buf & "eighteen" Case 19: Buf = Buf & "nineteen" End Select EnglishDigitGroup = Buf End Function |
How to use the function to convert number to words in excel
How to use the convert numbers into words formula
- Select any cell and type any number. For example, in cell B1, type 1250.25
- In cell B2, type English(B1) where B1 is the cell containing the number you want to convert.
- Press Enter to apply the formula.
Save your workbook and start converting numbers to words
Please note that you cannot save the Excel Workbook in the standard macro-free format. So, in order to save the workbook, please follow these steps:
- Click on File, then Save As.
- Choose a filename for your workbook.
- In the dialog box, click on Save as type and select Excel Macro-Enabled Workbook.
You can download our sample for best understanding of using the Convert Number into Words formula:
For more information about converting number into words in Excel, you may need to refer to Microsoft Documentation. If you are interested in Microsoft Access, you may also refer to MS Access Number to Words post.