Solved

i need it very soooooon

Posted on 2000-03-19
3
145 Views
Last Modified: 2010-05-02
Hi experts
how can i change the contents of an textbox which are numaric to an letters in another textbox like:
textbox 1 : 102
textbox 2 : one handerd and two
0
Comment
Question by:loay
3 Comments
 

Expert Comment

by:lgadi
ID: 2633279
Hi
  Well, there's no really easy way I know, except writing a (quite simple) function that gets a number and return its representation in words, by means of divisions and remainders.
 
0
 
LVL 32

Expert Comment

by:Erick37
ID: 2633289
"Converting Numbers to Words"

http://www.vb-world.net/misc/tip108.html
0
 
LVL 9

Accepted Solution

by:
Dalin earned 50 total points
ID: 2633313
Try this:

1, add the foolowing functions:
  Function ConvertNumberToWord(ByVal vLgNumber) As String
 
 Dim lTemp As String
 Dim lTheNumber As String
 Dim lMyWord As String
 Dim place(9) As String
 Dim Count As Integer
 
 place(2) = " Thousand "
 place(3) = " Million "
 place(4) = " Billion "
 place(5) = " Trillion "

lTheNumber = Trim(Str(vLgNumber))
        Count = 1
        Do While lTheNumber <> ""
                ' Convert last 3 digits of lTheNumber to English word
                lTemp = ConvertHundreds(Right(lTheNumber, 3))
                If lTemp <> "" Then lMyWord = lTemp & place(Count) & lMyWord
                If Len(lTheNumber) > 3 Then
                        ' Remove last 3 converted digits from it
                        lTheNumber = Left(lTheNumber, Len(lTheNumber) - 3)
                    Else
                        lTheNumber = ""
                    End If
                Count = Count + 1
            Loop
   

ConvertNumberToWord = lMyWord
End Function
 Private Function ConvertDigit(ByVal MyDigit) As String
        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 vLgNumber)
            Dim Result As String
            ' Exit if there is nothing to convert.
            If Val(vLgNumber) = 0 Then Exit Function
            ' Append leading zeros to number.
                    vLgNumber = Right("000" & vLgNumber, 3)
                    ' Do we have a hundreds place digit to c
                    '     onvert?
                    If Left(vLgNumber, 1) <> "0" Then
                              Result = ConvertDigit(Left(vLgNumber, 1)) & " Hundred "
                          End If
                          ' Do we have a tens place digit to conve
                          '     rt?
                          If Mid(vLgNumber, 2, 1) <> "0" Then
                              Result = Result & ConvertTens(Mid(vLgNumber, 2))
                             
                          Else
                              ' If not, then convert the ones place di
                              '     git.
                              Result = Result & ConvertDigit(Mid(vLgNumber, 3))
                          End If
                          ConvertHundreds = Trim(Result)
                      End Function
 Private Function ConvertTens(ByVal MyTens)
                          Dim Result As String
                          ' Is value between 10 and 19?
                          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
                          ' .. otherwise it's between 20 and 99.


                          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
                      ' Convert ones place digit.
                      Result = Result & ConvertDigit(Right(MyTens, 1))
                      End If
                      ConvertTens = Result
                      End Function

2. to covert the number in text1 and display in Text 2

Text2.Text = ConvertNumberToWord(CLng(Text1.Text))
0

Featured Post

Netscaler Common Configuration How To guides

If you use NetScaler you will want to see these guides. The NetScaler How To Guides show administrators how to get NetScaler up and configured by providing instructions for common scenarios and some not so common ones.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Windows 10 start screen issues 9 55
Copy a row 12 62
SQL VB connection works in one PC and doesn't in another 15 64
Exit a vb6 apps when a calling it apps closes 15 48
Introduction While answering a recent question about filtering a custom class collection, I realized that this could be accomplished with very little code by using the ScriptControl (SC) library.  This article will introduce you to the SC library a…
Background What I'm presenting in this article is the result of 2 conditions in my work area: We have a SQL Server production environment but no development or test environment; andWe have an MS Access front end using tables in SQL Server but we a…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question