Solved

i need it very soooooon

Posted on 2000-03-19
3
142 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

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

Introduction In a recent article (http://www.experts-exchange.com/A_7811-A-Better-Concatenate-Function.html) for the Excel community, I showed an improved version of the Excel Concatenate() function.  While writing that article I realized that no o…
The debugging module of the VB 6 IDE can be accessed by way of the Debug menu item. That menu item can normally be found in the IDE's main menu line as shown in this picture.   There is also a companion Debug Toolbar that looks like the followin…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…

929 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

Need Help in Real-Time?

Connect with top rated Experts

7 Experts available now in Live!

Get 1:1 Help Now