VBcoders Guest



Don't have an account yet? Register
 


Forgot Password?



Convert Numeric into string. This code converts numeric into strings and has been tested and implem

by Ajay Khullar (4 Submissions)
Category: String Manipulation
Compatability: VB 6.0
Difficulty: Unknown Difficulty
Originally Published: Sat 14th June 2003
Date Added: Mon 8th February 2021
Rating: (1 Votes)

Convert Numeric into string. This code converts numeric into strings and has been tested and implemented at many locations it converts values

Rate Convert Numeric into string. This code converts numeric into strings and has been tested and implem



    Dim bNegative As Boolean
    Dim bHundred As Boolean
    If nNumber < 0 Then
        bNegative = True
    End If
    nNumber = Abs(Int(nNumber))
    If nNumber < 1000 Then
        If nNumber \ 100 > 0 Then
            NumToString = NumToString & _
            NumToString(nNumber \ 100) & " hundred"
            bHundred = True
        End If
        nNumber = nNumber - ((nNumber \ 100) * 100)
        Dim bNoFirstDigit As Boolean
        bNoFirstDigit = False
        Select Case nNumber \ 10
            Case 0
        Select Case nNumber Mod 10
            Case 0
            If Not bHundred Then
                NumToString = NumToString & " ZERO"
            End If
            Case 1: NumToString = NumToString & " ONE"
            Case 2: NumToString = NumToString & " TWO"
            Case 3: NumToString = NumToString & " THREE"
            Case 4: NumToString = NumToString & " FOUR"
            Case 5: NumToString = NumToString & " FIVE"
            Case 6: NumToString = NumToString & " SIX"
            Case 7: NumToString = NumToString & " SEVEN"
            Case 8: NumToString = NumToString & " EIGHT"
            Case 9: NumToString = NumToString & " NINE"
        End Select
        bNoFirstDigit = True
        Case 1
            Select Case nNumber Mod 10
                Case 0: NumToString = NumToString & " TEN"
                Case 1: NumToString = NumToString & " ELEVEN"
                Case 2: NumToString = NumToString & " TWELVE"
                Case 3: NumToString = NumToString & " THIRTEEN"
                Case 4: NumToString = NumToString & " FOURTEEN"
                Case 5: NumToString = NumToString & " FIFTEEN"
                Case 6: NumToString = NumToString & " SIXTEEN"
                Case 7: NumToString = NumToString & " SEVENTEEN"
                Case 8: NumToString = NumToString & " EIGHTEEN"
                Case 9: NumToString = NumToString & " NINETEEN"
            End Select
            bNoFirstDigit = True
            Case 2: NumToString = NumToString & " TWENTY"
            Case 3: NumToString = NumToString & " THIRTY"
            Case 4: NumToString = NumToString & " FORTY"
            Case 5: NumToString = NumToString & " FIFTY"
            Case 6: NumToString = NumToString & " SIXTY"
            Case 7: NumToString = NumToString & " SEVENTY"
            Case 8: NumToString = NumToString & " EIGHTY"
            Case 9: NumToString = NumToString & " NINETY"
        End Select
        If Not bNoFirstDigit Then
            If nNumber Mod 10 <> 0 Then
'FIXIT: Replace 'Mid' function with 'Mid$' function                                        FixIT90210ae-R9757-R1B8ZE
                NumToString = NumToString & "-" & _
                 Mid(NumToString(nNumber Mod 10), 2)
            End If
        End If
    Else
    Dim nTemp As Currency
    nTemp = 10 ^ 7 'crore
    'nTemp = 10 ^ 12 'trillion
    Do While nTemp >= 1
        If nNumber >= nTemp Then
            NumToString = NumToString & _
            NumToString(Int(nNumber / nTemp))
            Select Case Int(Log(nTemp) / Log(10)) ' + 0.5)
                Case 12: NumToString = NumToString & " Trillion"
                Case 6: NumToString = NumToString & " CRORE"
                Case 4: NumToString = NumToString & " LAKHS"
                Case 2: NumToString = NumToString & " THOUSAND"
                Case 1: NumToString = NumToString & " HUNDRED"
            End Select
            nNumber = nNumber - (Int(nNumber / nTemp) * nTemp)
        End If
        'nTemp = nTemp / 1000
        If nTemp <= 1000 And nTemp >= 101 Then
            nTemp = nTemp / 10
        Else
            nTemp = nTemp / 100
        End If
    Loop
End If
If bNegative Then
    NumToString = " negative" & NumToString
End If
End Function

'FIXIT: Declare 'nAmount' with an early-bound data type                                    FixIT90210ae-R1672-R1B8ZE
Public Function RupeetoString(ByVal nAmount As Variant) As _
String

    Dim STRPaisa As String
    Dim INTPos As Integer
    Dim nRupee As Currency
    Dim nPaisa As Currency
    Dim INTLen As Integer
    nRupee = Int(nAmount)
    INTPos = InStr(1, nAmount, ".")
    If INTPos = 0 Then
        STRPaisa = 0
    Else
'FIXIT: Replace 'Mid' function with 'Mid$' function                                        FixIT90210ae-R9757-R1B8ZE
        STRPaisa = Mid(nAmount, INTPos + 1, 2)
    End If
    'STRPaisa = Right(nAmount, 2)
    INTLen = Len(STRPaisa)
    If INTLen = 1 Then
        STRPaisa = STRPaisa + "0"
    Else
        STRPaisa = STRPaisa
    End If
    nPaisa = CInt(STRPaisa)
    
    Dim x As String
    Dim xx As Integer
    
    RupeetoString = NumToString(nRupee) ' & " rupee"
    If Abs(nRupee) <> 1 Then
        RupeetoString = RupeetoString
    End If
    RupeetoString = RupeetoString & " AND " & _
    NumToString(nPaisa) & " PAISA ONLY"
    If Abs(nPaisa) <> 1 Then
        RupeetoString = RupeetoString
    End If
    StrAmount = RupeetoString
End Function


Download this snippet    Add to My Saved Code

Convert Numeric into string. This code converts numeric into strings and has been tested and implem Comments

No comments have been posted about Convert Numeric into string. This code converts numeric into strings and has been tested and implem. Why not be the first to post a comment about Convert Numeric into string. This code converts numeric into strings and has been tested and implem.

Post your comment

Subject:
Message:
0/1000 characters