Convert Numbers into Words in Excel

Convert Numbers into Words in Excel, how to convert a numeric value into words in excel for Indian rupees. It is a Excel Macro use it to convert a numeric value in a Microsoft Excel worksheet cell into its equivalent English words. In Real word we print our invoice or bill Amount in Numeric form and in Words also, to convert amount in words we can use excel macros. You can convert any numeric value into English words in excel.

So copy this macro code and use it in your excel worksheet to convert Numbers into Indian Currency Rupees in words. Useful in all Microsoft excel versions such as excel 2003, excel 2007, excel 2010, excel 2013 and excel 2016.

Numbers into Words Macro Coding-

Function NumtoRupees(ByVal MyNumber)
Dim Temp
Dim Rupees, Paise
Dim DecimalPlace, Count

ReDim Place(9) As String
Place(2) = " Thousand "
Place(3) = " lakh "
Place(4) = " Crore "

MyNumber = Trim(Str(MyNumber))
DecimalPlace = InStr(MyNumber, ".")

If DecimalPlace > 0 Then

Temp = Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2)
Paise = ConvertTens(Temp)
MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
End If

Count = 1
If MyNumber <> "" Then
Temp = ConvertHundreds(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

End If

Count = 2

Do While MyNumber <> ""
Temp = ConvertTens(Right("0" & MyNumber, 2))

If Temp <> "" Then Rupees = Temp & Place(Count) & Rupees
If Len(MyNumber) > 2 Then

MyNumber = Left(MyNumber, Len(MyNumber) - 2)

Else
MyNumber = ""
End If
Count = Count + 1
Loop
Select Case Rupees
Case ""
Rupees = ""
Case "One"
Rupees = "Rupee One"
Case Else
Rupees = "Rupees " & Rupees
End Select

Select Case Paise
Case ""
Paise = ""
Case "One"
Paise = "One Paise"
Case Else
Paise = Paise & " Paise"
End Select

If Rupees = "" Then
NumtoRupees = Paise & " Only"
ElseIf Paise = "" Then
NumtoRupees = Rupees & " Only"
Else
NumtoRupees = Rupees & " and " & Paise & " Only"
End If

End Function

Private Function ConvertDigit(ByVal MyDigit)
Select Case Val(MyDigit)
Case 1: ConvertDigit = "One"
Case 2: ConvertDigit = "Two"
Case 3: ConvertDigit = "Three"
Case 4: ConvertDigit = "Four"
Case 5: ConvertDigit = "Five"
Case 6: ConvertDigit = "Six"
Case 7: ConvertDigit = "Seven"
Case 8: ConvertDigit = "Eight"
Case 9: ConvertDigit = "Nine"
Case Else: ConvertDigit = ""
End Select

End Function

Private Function ConvertHundreds(ByVal MyNumber)
Dim Result As String

If Val(MyNumber) = 0 Then Exit Function
MyNumber = Right("000" & MyNumber, 3)
If Left(MyNumber, 1) <> "0" Then
Result = ConvertDigit(Left(MyNumber, 1)) & " Hundred "
End If

If Mid(MyNumber, 2, 1) <> "0" Then
Result = Result & ConvertTens(Mid(MyNumber, 2))
Else
Result = Result & ConvertDigit(Mid(MyNumber, 3))
End If

ConvertHundreds = Trim(Result)
End Function

Private Function ConvertTens(ByVal MyTens)
Dim Result As String
If Val(Left(MyTens, 1)) = 1 Then
Select Case Val(MyTens)
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

Select Case Val(Left(MyTens, 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 & ConvertDigit(Right(MyTens, 1))
End If

ConvertTens = Result
End Function

Thanks!!!

6 Comments

  1. […] Convert Numbers into Words […]



    • s k kapoor on February 4, 2018 at 10:00 am

      very nice presentation.



      • admin on February 4, 2018 at 2:37 pm

        Thanks a lot!



  2. s k kapoor on February 4, 2018 at 10:07 am

    thanks for giving link for vba file it made life easier



    • admin on February 4, 2018 at 2:37 pm

      Thank you so much!



  3. […] Convert Numbers into Words in Excel […]