Future Chartered Accountants

Home » Tips and Tricks » MS Excel » MS Excel digits in words of PKR.

MS Excel digits in words of PKR.

Start Microsoft Excel.
Press ALT+F11 to start the Visual Basic Editor.
On the Insert menu, click Module.
Type the following code into the module sheet.

 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 dollar amount.
 If DecimalPlace > 0 Then
 Paisas = 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 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 Dollar"
 Case Else
 Rupees = Rupees & " Rupees"
 End Select
 Select Case Paisas
 Case ""
 Paisas = " and No Paisas"
 Case "One"
 Paisas = " and One Cent"
 Case Else
 Paisas = " and " & Paisas & " Paisas"
 End Select
 SpellNumber = Rupees & Paisas
 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

Excel 2002 and Excel 2003
To use Insert Function, follow these steps:
Select the cell that you want.
Click Insert Function on the Standard toolbar.
Under Or select a category, click User Defined.
In the Select a function list, click SpellNumber, and then click OK.
Enter the number or cell reference that you want, and then click OK.

DOWNLOAD a sample Excel File

and ENJOY

digits-in-words-pkr

quick-download-media-file-image


Leave a comment

WELCOME

This website is the place for those who are looking for a best advice on Taxation under Tax Laws of various countries around the world specially Pakistan.

Follow Future Chartered Accountants on WordPress.com
Design a site like this with WordPress.com
Get started