VBcoders Guest



Don't have an account yet? Register
 


Forgot Password?



CONVERTING 12DIGIT FIGURE TO WORDS

by NAIR VINODKUMAR BALAN, if found useful kindly acknowledge by mailing me. (1 Submission)
Category: Miscellaneous
Compatability: VB 6.0
Difficulty: Unknown Difficulty
Originally Published: Thu 15th December 2005
Date Added: Mon 8th February 2021
Rating: (1 Votes)

CONVERTING 12DIGIT FIGURE TO WORDS

API Declarations


''created by vinodbalan
Dim x As Integer
'Main Function
Public Function SpellNumber(mynumber As String)
Dim Rupees, Paise, Temp
Dim decimalplace, Count
Dim x As Integer
Dim Place(9) As String
Place(2) = " Thousand "
Place(3) = " Lakh "
Place(4) = " Crore "
Place(5) = " Thousand "
'Place(6) = " Thousand"
'Place(7) = " Lakh"
' String representation of amount
x = Len(mynumber)
mynumber = Str(mynumber)
' Position of decimal place 0 if none
decimalplace = InStr(mynumber, ".")
'Convert Paise and set MyNumber to dollar amount
If decimalplace > 0 Then
Paise = GetTens(Left(Mid(mynumber, decimalplace + 1) & "00", 2))
mynumber = Trim(Left(mynumber, decimalplace - 1))
End If
Count = 1
Do While mynumber <> ""
If Count < 2 Then
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
ElseIf Count > 1 And Count < 4 Then
If Len(mynumber) = 1 Then
Temp = GetDigit(mynumber)
Else
Temp = GetTens(Right(mynumber, 2))
End If
If Temp <> "" Then Rupees = Temp & Place(Count) & Rupees
If Len(mynumber) > 2 Then
mynumber = Left(mynumber, Len(mynumber) - 2)
Else
mynumber = ""
End If
ElseIf Count > 3 Then
Temp = GetHundreds(Right(mynumber, 3))

If Temp <> "" Then
Rupees = Temp & Place(Count) & Rupees
ElseIf Count = 4 And Temp = "" And x > 9 Then
Rupees = Place(Count) & Rupees
End If
If Len(mynumber) > 3 Then
mynumber = Left(mynumber, Len(mynumber) - 3)
Else
mynumber = ""
End If


End If
Count = Count + 1


Loop

Select Case Rupees
Case ""
Rupees = "Zero Rupees"
Case "One"
Rupees = "One Rupee"
Case Else
Rupees = Rupees & " Rupees"
End Select

Select Case Paise
Case ""
Paise = " and Zero Paise."
Case "One"
Paise = " and One Paise."
Case Else
Paise = " and " & Paise & " Paise."
End Select
SpellNumber = Rupees & Paise
End Function
'Converts a number from 100-999 into text
Public Function GetHundreds(mynumber As String)
Dim Result As String
mynumber = Trim(mynumber)
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
Public Function GetTens(TensText As String)
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 "

Rate CONVERTING 12DIGIT FIGURE TO WORDS



Private Sub Text1_KeyPress(KeyAscii As Integer)
If x = 0 Then
                If KeyAscii = vbKeyReturn Then
                    Text2.Text = SpellNumber(Val(Text1.Text))
                    x = 1
                End If
        Else
                Text1.Text = ""
                Text2.Text = ""
                Text1.SetFocus
                x = 0
        End If
End Sub

Download this snippet    Add to My Saved Code

CONVERTING 12DIGIT FIGURE TO WORDS Comments

No comments have been posted about CONVERTING 12DIGIT FIGURE TO WORDS. Why not be the first to post a comment about CONVERTING 12DIGIT FIGURE TO WORDS.

Post your comment

Subject:
Message:
0/1000 characters