by Santosh Kr. Jha (1 Submission)
Category: Math/Dates
Compatability: VB 6.0
Difficulty: Unknown Difficulty
Originally Published: Mon 29th December 2008
Date Added: Mon 8th February 2021
Rating: (1 Votes)
Converts A Round Number to Words
API Declarations
Dim arr2(9) As String
Dim n As Long
Dim inWord As String
arr2(0) = "": arr2(1) = "": arr2(2) = " Hundred"
arr2(3) = " Thousand": arr2(4) = "": arr2(5) = "Lac"
arr2(6) = "": arr2(7) = " Crore": arr2(8) = ""
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Dim i As Integer
i = 0
n = Val(Text1.Text)
Do Until n = 0
arr(i) = n Mod 10
n = Int(n / 10)
i = i + 1
Loop
For i = 8 To 0 Step -1
If arr(i) > 0 Then
If i = 8 Or i = 6 Or i = 4 Or i = 1 Then
inWord = inWord + detDoubleDigit(arr(i), arr(i - 1))
If arr(i) = 1 Then i = i - 1
Else
inWord = inWord + detSingleDigit(arr(i))
End If
inWord = inWord + arr2(i)
End If
Next
Text2.Text = inWord
End If
End Sub
Private Function detDoubleDigit(m As Integer, n As Integer) As String
Select Case m
Case 1
Select Case n
Case 0
detDoubleDigit = " Ten"
Case 1
detDoubleDigit = " Eleven"
Case 2
detDoubleDigit = " Twelve"
Case 3
detDoubleDigit = " Thirteen"
Case 4
detDoubleDigit = " Fourteen"
Case 5
detDoubleDigit = " Fifteen"
Case 6
detDoubleDigit = " Sixteen"
Case 7
detDoubleDigit = " Seventeen"
Case 8
detDoubleDigit = " Eighteen"
Case 9
detDoubleDigit = " Nineteen"
End Select
Case 2
detDoubleDigit = " Twenty"
Case 3
detDoubleDigit = " Thirty"
Case 4
detDoubleDigit = " Fourty"
Case 5
detDoubleDigit = " Fifty"
Case 6
detDoubleDigit = " Sixty"
Case 7
detDoubleDigit = " Seventy"
Case 8
detDoubleDigit = " Eighty"
Case 9
detDoubleDigit = " Ninety"
End Select
End Function
Private Function detSingleDigit(m As Integer) As String
Select Case m
Case 1
detSingleDigit = " One"
Case 2
detSingleDigit = " Two"
Case 3
detSingleDigit = " Three"
Case 4
detSingleDigit = " Four"
Case 5
detSingleDigit = " Five"
Case 6
detSingleDigit = " Six"
Case 7
detSingleDigit = " Seven"
Case 8
detSingleDigit = " Eight"
Case 9
detSingleDigit = " Nine"
End Select
End Function