devxlogo

NumberToWords – Convert a number into its string representation

NumberToWords – Convert a number into its string representation

' Convert a number into its textual equivalent.' ' Pass True in the second argument if you want a null string when ' zero is passed.' This is a recursive routine that is probably the most concise' routines that solves the problemFunction NumberToWords(ByVal Number As Long, Optional BlankIfZero As Boolean) _    As String    Select Case Number        Case 0            NumberToWords = IIf(BlankIfZero, "", "Zero")        Case 1 To 19            NumberToWords = Choose(Number, "One", "Two", "Three", "Four", _                "Five", "Six", "Seven", "Eight", "Nine", "Ten", "Eleven", _                "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", _                "Seventeen", "Eighteen", "Nineteen")        Case 20 To 99            NumberToWords = Choose(Number  10 - 1, "Twenty", "Thirty", _                "Fourty", "Fifty", "Sixty", "Seventy", "Eighty", _                "Ninety") & NumberToWords(Number Mod 10, True)        Case 100 To 999            NumberToWords = NumberToWords(Number  100) & "Hundred" & IIf _                (Number >= 200, "s", "") & NumberToWords(Number Mod 100, True)        Case 1000 To 999999            NumberToWords = NumberToWords(Number  1000) & "Thousand" & IIf _                (Number >= 2000, "s", "") & NumberToWords(Number Mod 1000, True)        Case 1000000 To 999999999            NumberToWords = NumberToWords(Number  1000000) & "Million" & IIf _                (Number >= 2000000, "s", "") & NumberToWords(Number Mod 1000000, _                True)        Case Is >= 1000000000            NumberToWords = NumberToWords(Number  1000000000) & "Billion" & _                IIf(Number >= 2000000000, "s", "") & NumberToWords(Number Mod _                1000000000, True)    End SelectEnd Function

devx-admin

Share the Post: