Number to Words – Excel Formula

Share

Facebook
Twitter
LinkedIn

Convert a number to words in Excel using this amazing function. For example, 123,456 to One hundred twenty-three thousand four hundred fifty-six. You can use this elegant Excel formula to convert number to words.

convert number to words with this excel formula

Excel Number to Words Formula

Below I have provided number to words Excel formula. It assumes you have input number in cell A1.

Note: This function can convert numbers up to 999,999 into words.

The function:
				
					=LAMBDA(number,
    LET(
        th, INT(number / 1000),
        th_h, MOD(th / 100, 10),
        th_t, MOD(th, 100),
        th_tens1, INT(th.t / 10),
        th_tens2, MOD(th.t, 10),
        h, MOD(D2 / 100, 10),
        t, MOD(D2, 100),
        tens1, INT(t / 10),
        tens2, MOD(t, 10),
        tens, {"twenty", "thirty", "fourty", "fifty", "sixty", "seventy", "eighty", "ninety"},
        upto19, {"one", "two", "three", "four","five", "six", "seven", "eight", "nine", "ten"," eleven", "twelve","thirteen", "fourteen", "fifteen","sixteen", "seventeen", "eighteen","nineteen"},
        CONCAT(
            IF(
                th < 1,
                "",
                IF(th_h >= 1, INDEX(upto19, th_h) & " hundred ", "") &
                    IF(
                        th_t < 1,
                        "",
                        IF(
                            th_tens1 < 2,
                            INDEX(upto19, th_t),
                            INDEX(tens, th_tens1 - 1) &
                                IF(th_tens2 >= 1, "-" & INDEX(upto19, th_tens2), "")
                        )
                    ) & " thousand "
            ),
            IF(h >= 1, INDEX(upto19, h) & " hundred ", ""),
            IF(
                t < 1,
                "",
                IF(
                    tens1 < 2,
                    INDEX(upto19, t),
                    INDEX(tens, tens1 - 1) & IF(tens2 >= 1, "-" & INDEX(upto19, tens2), "")
                )
            )
        )
    )
)
				
			

How this formula works?

Formula & UDF to get Words from Number

Click here to download the sample file for this page. You can see number to words formula in column C. Play with the values or examine the formula to learn more.

In order to understand the number to words formula, you must first understand the newly introduced LAMBDA() & LET() functions.

LAMBDA Excel Function:

We can use LAMBDA() function to create custom functions in Excel easily. For example, we can take the logic of converting number to words and wrap it a LAMBDA with below syntax and call it number2words() as a custom function.

LAMBDA Syntax:

=LAMBDA(value, logic_to_convert_the_value_to_result)

Learn more about LAMBDA function in Excel here.

 

LET Excel Function:

LET function let’s us define variables to use with in the context of a formula. You can use LET function to shrink long formulas. Here is a quick example to explain the LET function.

Original formula:

 
				
					=IF(SUM(A1:A10)>100, “Too high”, 
IF(SUM(A1:A10)>20, “Medium”, 
IF(SUM(A1:A10)>0, “Positive”, 
“Could be zero or negative”)))
				
			

Same formula with LET():

				
					=LET(s, SUM(A1:A10), 
IF(s>100, “Too high”, 
IF(s>20, “Medium”, 
IF(s>0, “Positive”, 
"Could be zero or negative”))))
				
			

We are using the SUM(A1:A10) several times in the original formula. In the LET() formula version, we start by defining a variable s that is equal to SUM(A1:A10) and then we use s in rest of the formula. This simplifies the formula and supposedly makes it faster too (as Excel would calculate SUM(A1:A10) once.

Learn more about LET function

LET function is introduced newly and available only in Excel 365. Click here to read the documentation on LET function.

Understanding Number to Words Excel formula

The process for turning number to words is not complicated. If you know how to convert words for numbers up to 999, then same logic is applied to thousands, millions and billions too.

So let’s understand the process for numbers up to 999.

  1. Define two arrays upto19 and tys to hold {one,two…,nineteen} and {twenty, thirty…,ninety} respectively.
  2. From the input number (say in A1), calculate these 4 numbers and store them in variables.
    1. h = MOD(A1/100,10)
    2. t =  MOD(A1,100)
    3. tens1 = INT(t/10)
    4. tens2 = MOD(t,10)
  3. One way to look at these four variables is,
    1. h has hundreds digit
    2. t tells the last two digits
    3. tens1 tells the tens digit
    4. tens2 tells the ones digit
  4. So for an input number like 987, the 4 values would be h=9,  t=87, tens1=8 and tens2=7
  5. Now, construct the words version of number by simply concatenating below:
    1. INDEX(upto19, h)
    2. ” hundred “
    3. if tens1<2 then INDEX(upto19, t)
    4. else INDEX(tys, tens1-1)&”-“&INDEX(upto19, tens2)

The actual formula needs a few more if conditions to stop the flow when you hit a round number (like 500 should five hundred with no other words after).

The process for numbers up to 999,999:

We just need to follow the same idea as above, but twice. Once for thousands and once for balance.

Known limitations of this formula:

  • This formula works up to numbers 999,999 only.  You can scale it up to work with numbers up to a billion easily, but the formula gets longer.
  • It ignores any portion after decimal point. So 1003.20 becomes one thousand three.
  • It doesn’t show “zero” for 0 input value. The output would be blank instead.
 

Excel Number to Words Formula - Video Explanation

Just in case your head hurts after all that explanation above, watch this video to understand how the formula works (plus a quick demo of LET function). 

Excel Number to Words - VBA User Defined Formula


If you are not able to use the formula version then consider using below VBA UDF to convert number to words. This works up to a billion. 

				
					Public Function number2words(thisNum As Double) As String
    Dim bn As Integer, mn As Integer, th As Integer, h As Integer, retval As String
    
    On Error GoTo msg
    
    bn = Int(thisNum / 1000000000)
    mn = Int(thisNum / 1000000) Mod 1000
    th = Int(thisNum / 1000) Mod 1000
    h = thisNum Mod 1000
    
    If bn >= 1 Then
        retval = num2words999(bn) & " billion "
    End If
    If mn >= 1 Then
        retval = retval & num2words999(mn) & " million "
    End If
    If th >= 1 Then
        retval = retval & num2words999(th) & " thousand "
    End If
    retval = retval & num2words999(h)
    
    number2words = retval
    Exit Function
    
msg:
    number2words = "error"
    
End Function


Private Function num2words999(thisNum As Integer) As String
    'convert any number up to 999 to words
    
    Dim tys As Variant, upto19 As Variant
    
    tys = Array("twenty", "thirty", "fourty", "fifty", "sixty", "seventy", "eighty", "ninety")
    upto19 = Array("one", "two", "three", "four", "five", "six", "seven", "eight", 
"nine", "ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", 
"sixteen", "seventeen", "eighteen", "nineteen")
    
    Dim h As Integer, t As Integer, tens1 As Integer, tens2 As Integer, retval As String
    
    h = Int(thisNum / 100) Mod 10
    t = thisNum Mod 100
    tens1 = Int(t / 10)
    tens2 = t Mod 10
    
    If h >= 1 Then
        retval = upto19(h - 1) & " hundred "
    End If
    If t >= 1 Then
        If tens1 < 2 Then
            retval = retval & upto19(t - 1)
        Else
            retval = retval & tys(tens1 - 2)
            If tens2 >= 1 Then
                retval = retval & "-" & upto19(tens2 - 1)
            End If
        End If
    End If
    num2words999 = retval
End Function
				
			

How to use the Number2Words UDF?

You do not need prior VBA knowledge to use this function. It works like any other Excel function once you install it.

To install Number2Words function:

  • You must have Personal Macros enabled. If not, click here to read on how to do that.
  • Go to your Personal Macros workbook. Add a module or open an existing module.
  • Paste the above code there.

How to use the Number2Words function:

To use this function on value in A1, simply write =Number2Words(A1)

Known limitations:

  • This function ignores any portion after decimal point
  • It doesn’t say “Zero” if input is 0 or blank. It would simply return blank.
  • The results are not capitalized. Use Excel functions like PROPER() to do that.
  • This function works up to 2 billion. 
  • If you email the result workbook to a colleague or client, then they cannot refresh the formula (unless they too have installed Number2Words UDF)

FREE VBA Crash Course

If you are curious about VBA, click here for my free 5 part crash course.

Download File - Number to Words Formula & UDF

Formula & UDF to get Words from Number

Click here to download the sample file for this page. You can see number to words formula in column C. Column E has VBA version output. Play with the formulas or examine the code to learn more.

Comments or suggestions please....

I hope you are finding the number to words formulas useful. Let me know if you are facing any issues or have suggestions for changing the outputs.

Facebook
Twitter
LinkedIn

Share this tip with your colleagues

Excel and Power BI tips - Chandoo.org Newsletter

Get FREE Excel + Power BI Tips

Simple, fun and useful emails, once per week.

Learn & be awesome.

Welcome to Chandoo.org

Thank you so much for visiting. My aim is to make you awesome in Excel & Power BI. I do this by sharing videos, tips, examples and downloads on this website. There are more than 1,000 pages with all things Excel, Power BI, Dashboards & VBA here. Go ahead and spend few minutes to be AWESOME.

Read my storyFREE Excel tips book

Overall I learned a lot and I thought you did a great job of explaining how to do things. This will definitely elevate my reporting in the future.
Rebekah S
Reporting Analyst
Excel formula list - 100+ examples and howto guide for you

From simple to complex, there is a formula for every occasion. Check out the list now.

Calendars, invoices, trackers and much more. All free, fun and fantastic.

Advanced Pivot Table tricks

Power Query, Data model, DAX, Filters, Slicers, Conditional formats and beautiful charts. It's all here.

Still on fence about Power BI? In this getting started guide, learn what is Power BI, how to get it and how to create your first report from scratch.

49 Responses to “Project Management Dashboard / Project Status Report using Excel [Part 6 of 6]”

  1. [...] display milestones Part 4: Time sheets and Resource management Issue Trackers & Risk Management Project Status Reporting – Dashboard Bonus Post: Using Burn Down Charts to Understand Project [...]

  2. Alex says:

    Excellent!

    I was looking forward to this and you've done it again...Shame I can't claim it was all my own work 😉

    ps hope you're getting enough sleep

  3. Izabel says:

    Excelent !!! Tks to share your knowledge with us.
    Izabel
    Sao Paulo - Brazil

  4. Miguel says:

    Nice job!.

    I'm also keen on PM Excel Dashboards. Please, take a look at

    http://screencast.com/t/TyaxH5r4mDf

    That's one example of my Project control Spreadsheets.

    Cheers

  5. [...] haired Dilbert hat zum Abschluss einer Artikeserie zum Thema Projektmanagement mit Excel eine Anleitung zum Bau eines Projekt-Dashboards veröffentlicht. Ein Dashboard ist eine Visualisierungsform für große Mengen von meist [...]

  6. Rishil says:

    Quite a nice and helpful article. I am sure excel is one of the most used application across many many big companies. And your info on project status update using excel would surely be usefull. Keep up the good work on this blog site. Also to share there are some open source flash-based graphing and charting solution which caould also be used on any project..
    http://askwiki.blogspot.com/2009/07/how-to-create-quality-charts-using.html

  7. Chandoo says:

    @Alex, Izabel .. thank you 🙂

    @Miguel: Thank you. Your dashboard looks very good. It is inclined towards the budget and finances of the project. I have kept those aspects out of this series. May be I will revisit the financial aspect of projects at a later point.

    @Rishil: Thank you. Yes, you can create flash based charts (or even simple image based charts) and embed them in a project dashboard that can be published to the team using intranet (like sharepoint). This is how large companies usually do it. Thanks for sharing the Askwiki article.

  8. Tim says:

    Great looking dashboard!! Do you have a version for the Mac versions of Office available?

    Thanks

  9. ravi says:

    Chandoo,
    this is great piece of collating info.I liked it and shall try using it in office.
    Thanks for the all hard work behind this.

  10. Mrigank says:

    Chandoo,

    Kudos. This is really as simple as it gets for laymen. We did this sort of stuff in Consulting - but this can now become really simple for people. Will have my team look at this! Great work.

    thanks,

    Mrigank

  11. [...] I suggest reading my 7 part series on project management using excel. Starting with Excel Gantt Charts to Project Dashboards. [...]

  12. bw says:

    Just downloaded the project management template bundle...great!

    Have you done anywork on a Project Portfolio Dashboard template?

  13. Chandoo says:

    @Bw... Thanks for getting a copy of the templates. 🙂 I have worked on few assignments where we built such templates. But these are similar to other regular dashboard templates. I will share some of these ideas in a later post someday. Meanwhile if you have any ideas on how to structure project portfolio dashboard, let me know using comments or email.

  14. [...] to display milestones Time sheets and Resource management Issue Trackers & Risk Management Project Status Reporting – Dashboard Bonus Post: Using Burn Down Charts to Understand Project [...]

  15. [...] display milestones Time sheets and Resource management Part 5: Issue Trackers & Risk Management Project Status Reporting – Dashboard Bonus Post: Using Burn Down Charts to Understand Project [...]

  16. [...] to display milestones Time sheets and Resource management Issue Trackers & Risk Management Project Status Reporting – Dashboard Bonus Post: Using Burn Down Charts to Understand Project [...]

  17. Josh L says:

    Thanks fro the great ideas! To get a sense of the layout and design of a Dashboard more geared toward Cost and Schedule anaysis, check out the example Dashboard at http://www.ProjectDashboards.com which was built entirely in excel.

  18. DS says:

    hey,

    i just need a simple Chart where by i can show some of the projects by % wise. no dates required.

    1st column Project name and 2nd column will be status (filled with %). can you pls help me out.

    Thanks.

  19. Chandoo says:

    @DS... if you have excel 2007, you can use data bars in conditional formatting for this purpose.

  20. Larph says:

    Hi Chandoo - this series is an excellent resource and tutorial, thank you for sharing.

    When I sat down to consider what my dashboard should look like, one of the most important features for me is to be able to maintain version control and to show simply on what version is on display.

    Apart from the naming convention of the file name, is there a good way to do this within a dashboard? I'd be interested to hear your thoughts!

  21. Chandoo says:

    @Larph: Welcome 🙂

    > You can do version control thru Macros (but always remember that your audience can disable macros)

    > Another option is to use a static time stamp / version number in the title page of dashboard that you update manually whenever you make changes to the file

    > In excel 2010, you can keep track of file versions from File menu. This can be used to select a previous version of dashboard.

    > Best option is to use a version control system like SVN or upload files to Sharepoint or something like that. This will take care of versioning for you (although it is a bit technical and dashboard audience may have difficulty figuring the versions out).

    > The easiest option is to use filenames and the CELL() formula to get the version number (or date) from the filename so you can show it on the dashboard.

  22. Di says:

    Hi Chandoo... I'm following you from Brazil...
    I would like to thank you for the tips about excel, mainly with dashboards ... It helped me a lot …
    Take care...

    Di

  23. Kelly Fidei says:

    On the dashboard when I print, the text is blanked out in the middle of the Issues list - suggestions on how to fix?

  24. Neil Joseph says:

    Hi Chandoo, do you have an equivalent Project Management Dashboard / Project Status Report for MS Office 2010?

  25. Paul Brown says:

    As a Microsoft trainer I'm interested in your choice of Excel for project management. I'm assuming that you've tried Microsoft Project and have decided not to use it? We get folks on our MS Project courses who've tried to use Excel for PM purposes and none of them have made such an impressive project plan, but I wonder is it worth all the effort?

  26. Arc Nteimam Finomo says:

    This looks very interesting. How may I be a part of this

  27. Stephanie says:

    Does this template work in Google Spreadsheets?

  28. Thierry Lutonto says:

    Many thanks for sharing your expertise with us. Keep up the good work 🙂

  29. ppm software says:

    Heya i'm for the first time here. I came across this board and I to find It really helpful & it helped me out a lot. I am hoping to offer one thing again and aid others like you helped me.

  30. Adam G says:

    Hi Chandoo,
    Your PM dashboards impressed me so much that I've downloaded the Portfolio and Project Management package.  All of the documents look very professional.
    I was going through the Portfolio dashboard and I had a question.  
    When I enter in additional holidays they are highlighted in the gantt chart.  Is it possible so that the name of the holiday shows up in the highlighted area of the gantt chart.
    Thanks
    Adam

  31. alan foster says:

    can you confirm that the downloads will work on a mac - excel for mac v14.3.6

    thanks

  32. Paul says:

    Made a slight variation on the schedule sheet,

    1. Add a date column for start
    2. In week column cell use =weeknum() and link to date cell
    3. Hide week column

    When you enter in a date for each task the week number is populated accordingly
    simple but more effective, you can also dynamically link the date cell to your MSP project file for even more automation!!

  33. Irick Burris says:

    I purchased a copy of the project management dashboard excel file. I misplaced the password to unlock the file and make modification. Can you please resend the password.

    Thank much in advance...

  34. ninemsn.com.au says:

    Hi there! I just would like to give you a big thumbs up for your great info
    you've got right here on this post. I'll be returning to your website
    for more soon.

  35. Vijay says:

    I bought ur project management template just want to know how to hide the budget section from portfolio?

  36. Squirrel says:

    Hi, Thanks - very good job you've prepared!
    You've inspired me as well 🙂
    Best regards

  37. mj says:

    Hello!
    I am using a gantt chart template which i got from your website. All is good just when I add all my acitivities in data spreadsheet and then go back to gantt chart to view them, I only see first 9 and then I need to keep scrolling for the next ones. is it possible to see most of the activities if not all in the single frame.
    thanks for answering!

  38. Sanford says:

    This is my first time pay a visit at here and i am actually happy to read all at alone place.

  39. gerald says:

    I am interested in your dashboard; downloaded the locked version, unable to use it...do you have a user guide that is available that I can see and use on the locked version?

  40. Arun says:

    Please send me daily newsletter

  41. Ramya says:

    Hi,
    I downloaded the PM dashboard and the gantt chart only has dates till the year 2016. How do I change this to include 2017 FY as well.
    When I enter a activity for this year , it fails to show up on the chart.

  42. Hari says:

    Hi

    Would.like to purchase the project management .kits

    Pls share the payment link in INR

    Also share your contact number to speak with you

    Regards
    Hari
    9384825926

Leave a Reply