How To Convert Number To Words in Excel
How To Convert Number To Words in Excel
How To Convert Number To Words in Excel
29
In this article I will show you two quick and free ways to convert currency numbers into English words in Custom Search
Excel 2010, 2013 and other versions.
Microsoft Excel is a great program to calculate this and that. It was initially developed to process
large data arrays. However, it also lets creating accounting records like invoices, evaluation or Excel: featured articles
balance sheets quickly and effectively.
Merge multiple sheets into one
In more or less solid payment documents it is necessary to duplicate numeric values with their
Compare 2 columns in Excel for
word form. It is much harder to falsify typed numbers than those written by hand. Some swindler
matches and differences
can try to make 8000 out of 3000, while it is almost impossible to secretly replace "three" with
"eight". Compare 2 Excel files/sheets for
differences
So what you need is not just convert numbers to words in Excel (е.g. 123.45 to "one hundred and
How to merge Excel files into one
twenty three, forty five"), but spell out dollars and cents (е.g. $29.95 as "twenty nine dollars and
ninety nine cents" ), pounds and pence for GBP, euros and eurocents for EUR, etc. Merge 2 columns in Excel
Even Excel 2013 doesn't have a built-in tool for spelling numbers, not to mention earlier versions. Excel VLOOKUP tutorial for
But that is when Excel is really good. You can always improve its functionality using formulas in all beginners with formula examples
their Excel INDEX / MATCH functions
combinations, VBA macros, or third-party add-ins. instead of VLOOKUP
Below you'll find two ways to convert numbers from figures to words 3 ways to remove spaces
between words / numbers in
SpellNumber VBA macro to convert a numeric value into English words Excel cells
Use an add-in to spell numbers to words Excel COUNTIF examples - not
And, possibly, you may need to convert Words to Numbers in Excel blank, greater than, duplicate or
unique
Note. If you are looking for the number to text conversion, which means you want Excel to Find duplicates in Excel
see your number as text, it's a bit different thing. Usually, you simply need to change the cell
format in Excel (select your range with numbers, press Ctrl+1 on the Number tab, and select Сalculate time in Excel - time
"Text" in the Category field). You can also use the formula =text(). difference, adding / subtracting
times
Please find the details in the article Ways to convert numbers to text in Excel.
Separate names in Excel: split
first and last name into different
columns
SpellNumber VBA macro to convert numbers to words
As I have already mentioned, Microsoft didn't want to add a tool for this task. However, when they Outlook: featured articles
saw how many users needed it, they created and published the special VBA macro on their
Сreate and use e-mail templates
website. The macro does what its name SpellNumber suggests. All other macros I came across are
in Outlook
based on the Microsoft code.
The spellnumber option is able to write dollars and cents. If you need a different currency, you can How to fix "Cannot start
change "dollar" and "cent" with the name of your one. Microsoft Outlook. Unable to
open Outlook window" error
If you are not a VBA savvy guy, below you will find a copy of the code. If you still don't want or
Outlook BCC - what blind carbon
haven't time to sort this out, please use this solution.
copy is and how to add Bcc
1. Open the workbook where you need to spell the numbers. recipients in Outlook
2. Press Alt+F11 to open the Visual Basic editor window. Remove duplicate emails in
Outlook quickly and safely
3. If you have several books opened, check that the needed workbook is active using the list of
projects in the upper left corner of the editor (one of the workbook elements is highlighted
with blue).
5. You should see a window named YourBook - Module1. Select all of the code in the frame below Excel duplicates Excel date
and paste it to this window.
Excel tips
Google Sheets Outlook
Outlook duplicates Outlook BCC
Outlook templates
Sign in
Register
Log in
Option Explicit ?
'Main Function
Function SpellNumber(ByVal MyNumber)
Dim Dollars, Cents, Temp
Dim DecimalPlace, Count
ReDim Place(9) As String
Place(2) = " Thousand "
Place(3) = " Million "
Place(4) = " Billion "
Place(5) = " Trillion "
MyNumber = Trim(Str(MyNumber))
DecimalPlace = InStr(MyNumber, ".")
If DecimalPlace > 0 Then
Function GetTens(TensText)
Dim Result As String
Result = "" ' Null out the temporary function value.
If Val(Left(TensText, 1)) = 1 Then ' If value between 10-19...
Select Case Val(TensText)
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 ' If value between 20-99...
Select Case Val(Left(TensText, 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(TensText, 1)) ' Retrieve ones place.
End If
GetTens = Result
End Function
Function GetDigit(Digit)
Select Case Val(Digit)
You will need to resave your workbook. When you try to save the workbook with a macro you'll
get the message "The following features cannot be saved in macro-free workbook"
Click No. When you see a new dialog, chose the Save as option. In the field "Save as type" pick
the option "Excel macro-enabled workbook".
Voila!
Left-click and drag it across the column to fill in the formula. Release the button to see the results:
Note. Please keep in mind that if you use SpellNumber with a link to another cell, the written
sum will be updated each time the number in the source cell is changed.
You can also enter the number directly into the function, for example, =SpellNumber(29.95)
(29.95 - without quotation marks and the Dollar sign).
The main disadvantage of using a macro is if you send the workbook to somebody else, this
person will not see the text unless the macro is built into the workbook. And even if it's built-in,
they will get an alert that there are macros in the workbook.
Besides being ready for use, the tool is really flexible in converting numbers. You can choose the
text case of the result (lower case, Title Case, Sentence case, UPPER CASE ), also you can select
how you want to see the fraction:
Spells decimal point, each zero and the rest of the number as an integer.
Doesn't spell the fraction but writes it as a fraction with denominator of 100, 1000, 1000000
The author states that it's tested and works in Excel for Windows 2000, 2002(XP), 2003, 2007, 2010
(32-bit), and 2013 (32-bit) in MSI-based and Click-To-Run installations of Office 365 cloud-based
services.
If you are the one with Excel 64-bit like me, drop the author a line and ask him for a special
version.
It appears that Excel MVP, Jerry Latham, created such Excel User defined function (UDF) as
WordsToDigits. It converts English words back to number.
You can download Jerry's WordsToDigits workbook to see the UDF code. Here you'll also find his
examples of how to use the function.
See also
Merge Excel worksheets by matching data
1 Umer says:
August 29, 2016 at 6:16 am
Sir, How can i convert dollar into Rupees and cent Into paisa in SpellNumber. I mean i want to
change numeric value into words in pakistani currency. Kindly guide.
Your early response must be appreciated
Reply
sohaib says:
December 15, 2017 at 5:12 pm
Umer its very simple, after copying the above formula into module press CTRL+H and re-
place the word Dollar with Rupee and Cent with Paisa and then safe the module.
Reply
2 Albert says:
September 2, 2016 at 4:07 pm
Beautiful!!!!
Thank you for posting and making it so easy to implement. Really helped out in a crunch.
Reply
3 Irfan says:
September 3, 2016 at 3:13 pm
Reply
4 Thangamani says:
September 4, 2016 at 12:17 pm
Reply
5 Jolyn says:
September 7, 2016 at 8:54 am
Hi,
Can i have a copy of the formula in excel for the converted value, please ?
Reply
Reply
7 Salman says:
September 30, 2016 at 7:08 am
Option Explicit
'Main Function
Function SpellNumber(ByVal MyNumber)
Dim Rupees, Paisas, Temp
Dim DecimalPlace, Count
ReDim Place(9) As String
Place(2) = " Thousand "
Place(3) = " Million "
Place(4) = " Billion "
Place(5) = " Trillion "
' String representation of amount.
MyNumber = Trim(Str(MyNumber))
' Position of decimal place 0 if none.
DecimalPlace = InStr(MyNumber, ".")
' Convert Paisas and set MyNumber to Rupee amount.
If DecimalPlace > 0 Then
MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
End If
Count = 1
Do While MyNumber ""
Temp = GetHundreds(Right(MyNumber, 3))
If Temp "" Then Rupees = Temp & Place(Count) & Rupees
If Len(MyNumber) > 3 Then
MyNumber = Left(MyNumber, Len(MyNumber) - 3)
Else
MyNumber = ""
End If
Count = Count + 1
Loop
Select Case Rupees
Case ""
Rupees = "No Rupees"
Case "One"
Rupees = "One Rupee"
Case Else
Rupees = Rupees & " Rupees"
End Select
SpellNumber = Rupees
End Function
Reply
sohaib says:
December 15, 2017 at 5:09 pm
how can we add the word "Only" in this macro to have this word at the end of the spelled
values?
Reply
Hi Sohaib
Eg:
=CONCATENATE(SpellNumber(A1)," Only")
Reply
Fabienne says:
March 5, 2018 at 8:37 am
Super helpful. It's also useful if you have a currency in 2 words, like Ugandan Shilling.
You can replace Dollars only with 1 word.
so I replaced Dollars by Ugandan and I added Shillings, in the end, with CONCATENATE
instead of Only.
=CONCATENATE(SpellNumber(A1)," Shillings")
Reply
Some errors in that code for me, I've fixed and changed to UK Pounds, also added "and"
between the thousand and the hundreds, and a comma.
Option Explicit
'Main Function
Function SpellNumber(ByVal MyNumber)
Dim Pounds, Pence, Temp
Dim DecimalPlace, Count
ReDim Place(9) As String
Place(2) = " Thousand, "
Place(3) = " Million "
Place(4) = " Billion "
Place(5) = " Trillion "
' String representation of amount.
MyNumber = Trim(Str(MyNumber))
' Position of decimal place 0 if none.
DecimalPlace = InStr(MyNumber, ".")
' Convert Pence and set MyNumber to Pounds amount.
If DecimalPlace > 0 Then
MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
End If
Count = 1
Do While MyNumber ""
Temp = GetHundreds(Right(MyNumber, 3))
If Temp "" Then Pounds = Temp & Place(Count) & Pounds
If Len(MyNumber) > 3 Then
MyNumber = Left(MyNumber, Len(MyNumber) - 3)
Else
MyNumber = ""
End If
Count = Count + 1
Loop
Select Case Pounds
Case ""
Reply
Sir,
Please send details of excel sheet in permanent add for automatically spellnumber on MS ex-
cel- 2007.
Thanking you
Reply
Dear Stephen,
please send me excel sheet for
converting same
Reply
10 vampire says:
October 14, 2016 at 3:43 am
Example
i type a code 001 At Cell (A1) - spell Number will show (american) at the another sheet
i type a code 002 At Cell (A1) Also - spell Number will show (african) at the another sheet and
so on... I have a lot of city name to make it, please help me
Thanks
Reply
11 sultan says:
October 16, 2016 at 7:56 am
Reply
Dear Stephen,
thanks
Reply
13 ravi says:
December 10, 2016 at 12:00 pm
Reply
i want number to ward in rupees and due to this formula it comes into dollars, than what's
the step for it..............
Reply
Hi Sir,
I am very much need the program that convert the numbers in to English words in excel
2007.(Ex: 11- One One, 20- Two Zero, 21-Two Zero like that)
Please send me the solution for above querry,
Reply
16 jansen says:
January 18, 2017 at 3:26 am
i use the module, but our central bank required us to put a "ONLY" word in the end of the
Check. how can i do this?
Reply
Please the code to convert amount to words is excellent, only i think there's something miss-
ing. after the code is pasted in Excel Module, and you key-in 420, the result that comes is:
Four Hundred Twenty Dollars and No Cents. But am expecting Four Hundred and Twenty Dol-
lars and No Cents. This means the an "and" is missing in-between Hundred and twenty.
Thank you and looking forward to hear from you soon.
Reply
18 Puvanah says:
February 3, 2017 at 10:08 am
Can i get modules for spellnumbers in words with cents. I have those modules with currency.
But i'm using multi currencies so i don't want modules with currencies. Please help email me
the modules which i request. Urgent. Please and Thanks.
Regards,
Puvanah
Reply
19 MN says:
February 8, 2017 at 7:53 am
How can we split the amount in words into 2 lines in case 1 line is not enough to accommo-
date the amount in words? This is needed when printing on pre-printed cheque leaves.
Reply
20 Aklanka says:
February 22, 2017 at 8:18 am
Reply
Dear Sir please send me the copy of these excel sheet please ,as soon as possible , please
please
Reply
22 KCraton says:
February 23, 2017 at 11:30 pm
Thank you! Copied and pasted the module, saved my file as an .xlm and bada-boom!
Reply
Reply
24 RAZAK says:
March 12, 2017 at 11:04 am
Working done ,
after save i close this file again open try modify and try change then its showing error
Reply
Hi all,
Can someone assist me to write
1020 as one thousand and twenty not one thousand twenty please.
Thank you in advance
Reply
Boss says:
March 31, 2017 at 7:16 am
Reply
26 Boss says:
March 31, 2017 at 7:14 am
Therefore,
100 = Clint
150 = Clint Fifthy
123 = Clint Twenty Three
etc..
Reply
If you want the word 'Clint' to stand for '100', you will need to modify the code. Try asking
for it on MrExcel forum.
It is very simple to convert dollar into your currency for example if you have a Rupee go to
Module (micro-soft visual basic) enter Ctrl + R just replace dollar and cent with your currency.
Reply
28 Beth says:
April 16, 2017 at 2:52 pm
Please send me the excel sheet for converting dollars to words. I tried to paste from an earlier
Spellnumber post using VBA but I get a #Name error.
Thank you.
Reply
The VBA code from the example above works perfectly when we try it. Please, repeat the
steps from the tutorial making sure that you paste the code without losing any lines, and
save your document in the proper way as it is described. If this still doesn't help, try our
add-in. If the error won't disappear, send us your workbook and the link to this article and
your comment to support@ablebits.com.
Reply
29 tanjil says:
April 30, 2017 at 9:32 am
Reply
30 Amal says:
May 4, 2017 at 7:39 am
Reply
31 Rohit says:
May 5, 2017 at 10:05 am
Reply
32 JB says:
May 9, 2017 at 8:10 am
I have follwed your instruction & But still the error as #Name is apprearing on the spell num-
ber formula. please help
Reply
33 Srinivas says:
June 3, 2017 at 6:34 pm
Reply
Reply
35 Tamizi says:
July 11, 2017 at 4:08 am
Reply
36 Tamizi says:
July 11, 2017 at 4:09 am
Reply
Reply
38 Glenn says:
August 15, 2017 at 7:11 am
I have tried and it was successful. But it was all in dollars.. How about in Qatar Riyals? How
can i do it? Can you feed the module formula?
Reply
Reply
40 David says:
October 23, 2017 at 1:35 pm
Hi, I have an issue where i am trying to spellnumber a figure in a summed cell. I have changed
the currency to GBP and Pence, but the spell number keeps minusing 1 Pence from the writ-
ten number. If i do it on an un-summed cell it works fine.
PLEASE HELP!?
Reply
Hello David,
I'm sorry, but we can't reproduce this issue on our side, the function spells numbers from a
summed cell correctly. Could you try to follow the steps from the post again and check if it
works for you?
Reply
David says:
October 24, 2017 at 5:03 pm
HI Irina
It was only happening between numbers involving 40-70. Very strange as other than that
it works perfectly other than not putting an 'and' in after hundred but we can add that in
Reply
Hi David,
Thank you for the details. It would be great to have a look at the document, please
send it to support@ablebits.com with a link to this post, it may help us understand
what is causing this strange behaviour.
Reply
41 David says:
October 26, 2017 at 8:58 am
Hi Irena
I have emailed you the document as requested. Hope you can help :)
Reply
The problem is that the formula results are rounded in Excel, while VBA gets a string and
converts only the first 2 characters after the separator. To avoid this issue, please use the
following formula instead:
=spellnumber(ROUND(N24,2))
Reply
42 Bhuraram says:
November 1, 2017 at 6:40 pm
Reply
43 Ceen says:
November 2, 2017 at 10:37 pm
Dear David ,
In reference to Irina's chat string the same sheet is required by me .I am unable to poke in
hours in preparing the formulation ready sheet
Much oblighed
Sincerely 'very faithfully
CEEN
Reply
44 Akki says:
November 20, 2017 at 7:41 am
Please send details of excel sheet in permanent add for automatically spellnumber on MS ex-
cel- 2016
Reply
Hi Dear, Can you pleases help to fix the decimal up to 3 Digit. Like below:
45.975 -Forty Five Dollar and Nine Hundred seventy Five Cents.
Reply
Please send details of excel sheet in permanent add for automatically spellnumber on MS ex-
cel- 2007.
Also please suggest me how to use spellnumber in excel ,i fallowed your steps as u say ,the
results came" #name?,",like that,so plz show me right usage
I am waiting for your reply Thanks Muhammad Ashfaq from Pakistan Karachi.....
Reply
47 Prem says:
January 21, 2018 at 9:24 am
Br//
Prem
Reply
48 paras says:
January 29, 2018 at 11:33 am
Reply
49 paras says:
January 29, 2018 at 11:33 am
Reply
50 harry says:
February 5, 2018 at 10:31 am
Please send details of excel sheet in permanent add for automatically spellnumber on MS ex-
cel- 2007
Reply
51 Mozammel says:
February 10, 2018 at 12:12 pm
Hello Prem,
Thanks,man. it helped me out.
Regards:
Mozammel
Chittagong, Bangladesh.
Reply
52 Bharath says:
March 7, 2018 at 6:21 am
This is awesome! I know nothing about VBA but it still made it happen with this so Thanks a
ton. however, how do I exclude cents/paisa from the code?i.e. will not need any decimals.
Thanks again.
Reply
53 alicia says:
March 9, 2018 at 8:16 am
=CONCATENATE("US ",spellnumber(cell),"***")
I don't know what's wrong it issue "Name?" Anyone can answer me?
Many Thanks,
Alicia
Reply
54 meharoof says:
March 12, 2018 at 9:37 am
Reply
55 Grace says:
April 12, 2018 at 8:27 pm
I was able to use the SpellNumber successfully for all numbers except for numbers that are
only in the thousands with any other numbers (e.g. 54,000 or 30,000). I get two spaces before
the word Dollars. I had a similar problem with numbers that ended in the hundred dollars
and numbers that ended with 20, 30, 40, 50, 60, 70, 80 and 90. To fix the problem, I changed
the GetHundreds = Result to GetHundreds = Trim(Result) and GetTens = Result to GetTens =
Trim(Result). I don't know how to change the code for numbers that are only in the
Thousands.
Reply
56 Diana says:
April 19, 2018 at 9:08 pm
In spanish we do not say "Three hundred" in two words, we say "Trecientos" in one word. Is
there a say to add another clause to list numbers from 100-999
I try to add this but I am getting an error
Reply
Reply
Reply
59 Joseph says:
May 7, 2018 at 3:12 pm
Doug says:
May 7, 2018 at 4:26 pm
Reply
Doug says:
May 8, 2018 at 1:34 pm
Joseph:
The VBA code is in the article above or you need a third party tool.
Reply
60 Chen says:
May 8, 2018 at 4:11 am
example: 6,130.20 = Six Thousand One Hundred Thirty and Twenty Cents
Reply
Older Comments
Post a comment
Name Name
Send
Unfortunately, due to the volume of comments received we cannot guarantee that we will be
able to give you a timely response. When posting a question, please be very clear and concise.
We thank you for understanding!
Copyright © 2002 - 2018 Ablebits.com. All rights reserved. Terms of use Contact us
Microsoft and the Office logo are trademarks or registered trademarks of Microsoft Corporation in the United
States and/or other countries.