The printed version.
Advanced Sample - Invoiced Total in English Words (c5102)
c5102 now includes the customized invoice template for the latest version of Invoice Manager for Excel. This is what you will see when you open
Advanced Sample - Invoiced Total in English Words - IMFE edition
You are safe to download the resources. We've added our digital signatures to the files.
Download this if you want this design to be set as the default template by the installer program.
Without database file. How to download and use
Download this if you have already installed IMFE, and are looking for additional customized templates; or if you want a template for Invoice Manager (Lite).
As a business document, an invoice sent by a business to a client to denote an obligation to pay for goods or services. One of the most important fields is the total amount to pay. This sample invoicing template shows you how to show the invoiced total in English words.
As of the current implementation, Invoice Manager for Excel (namely Uniform Invoice Software) does not contain a built in function for converting a numeric value into equal English words. Fortunately, Invoice Manager for Excel (namely Uniform Invoice Software) is built upon Excel. Like other Office programs, Microsoft Excel supports VBA (Visual Basic for Application) macros, which you can use to extend the functionalities of Excel itself, including creation of user-defined formulas (functions).
While Excel itself does not have a built formula to convert a numeric value into English words, it is possible to create VBA function and have it work with your invoice template.
Most templates here on InvoicingTemplate.com are ".xlsx" files. ".xlsx" workbooks are Microsoft Excel Open XML Format Spreadsheet files. It's an XML-based spreadsheet file created by Microsoft Excel version 2007 and later. One limitation of ".xlsx" format is that it cannot store macros (i.e. VBA codes). To save the macro function code with the Excel invoicing template, you have to firstly convert your template into ".xlsm" format, which is called "Excel macro-enabled Workbook". See c5101 - Advanced Invoice Sample - Macro-Enabled Invoicing Template for more information on this topic.
In this advanced sample of creating customized invoice template, we'll use c5099 Standard Business Invoicing Template with Oval Button in the Business Invoice Templates gallery as the starting point, add the macro function "SpellNumber" to the template to show the billed amount in English words.
First, to convert an ".xlsx" invoice template into ".xlsm" format, follow steps below.
Now the steps to create the "SpellNumber" VBA macro function for the ".xlsm" Excel workbook file. The macro code was copied from Microsoft at How to convert a numeric value into English words in Excel, where you can also find step by step instructions on how the create the spreadsheet file. You can also find a similar implementation at Two best ways to convert numbers to words in Excel, and at Converting Numbers Into Words.
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 " ' String representation of amount. MyNumber = Trim(Str(MyNumber)) ' Position of decimal place 0 if none. DecimalPlace = InStr(MyNumber, ".") ' Convert cents and set MyNumber to dollar amount. If DecimalPlace > 0 Then Cents = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & _ "00", 2)) MyNumber = Trim(Left(MyNumber, DecimalPlace - 1)) End If Count = 1 Do While MyNumber <> "" Temp = GetHundreds(Right(MyNumber, 3)) If Temp <> "" Then Dollars = Temp & Place(Count) & Dollars If Len(MyNumber) > 3 Then MyNumber = Left(MyNumber, Len(MyNumber) - 3) Else MyNumber = "" End If Count = Count + 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 SpellNumber = Dollars & Cents End Function ' Converts a number from 100-999 into text Function GetHundreds(ByVal MyNumber) Dim Result As String If Val(MyNumber) = 0 Then Exit Function MyNumber = Right("000" & MyNumber, 3) ' Convert the hundreds place. If Mid(MyNumber, 1, 1) <> "0" Then Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred " End If ' Convert the tens and ones place. If Mid(MyNumber, 2, 1) <> "0" Then Result = Result & GetTens(Mid(MyNumber, 2)) Else Result = Result & GetDigit(Mid(MyNumber, 3)) End If GetHundreds = Result End Function ' Converts a number from 10 to 99 into text. 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 ' Converts a number from 1 to 9 into text. Function GetDigit(Digit) Select Case Val(Digit) 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
If your invoice format does not use / show the balance and you want to show the "Total", use this formula:
For example, if the amount to convert is "756.00", the result will be "Seven Hundred Fifty Six Dollars and No Cents".
The support for VBA macros is one of the big advantages of Microsoft Office / Excel. With this feature, you can extend our invoicing templates in the way you like to meet your business requirements. Feel free to see more samples in the Business Invoice Formats gallery.
Like other form designs here on InvoicingTemplate.com, Advanced Bill Sample - Invoiced Total in English Words is free (offered to you at a price of 0.00USD). It works on Windows XP and all newer versions of Windows, and Excel 2007, 2010, 2013, 2016 or 2019.
|Name||Advanced Sample - Invoiced Total in English Words|
|Category||Sales Invoice Template|
|Release Date||Sunday, November 20, 2016|
|Format (XLS or XLSX)||.xlsm|
|Excel Version||Excel 2003 / Excel 2007 / Excel 2010 / Excel 2013 / Excel 2016 / Excel 2019|
|Line Height (Points)||18.00|
|Papaer Size / Orientation||Portrait|
|Default Margins (Points)|
February 10, 2018