Submit Your Article Forum Rules

Results 1 to 2 of 2

Thread: Numeric to text Convertion

  1. #1
    Junior Member
    Join Date
    Sep 2008
    Posts
    3

    Numeric to text Convertion

    ************ Code Start **********
    'This code was originally written by Joe Foster.
    'It is not to be altered or distributed,
    'except as part of an application.
    'You are free to use it in any application,
    'provided the copyright notice is left unchanged.
    '
    'Code Courtesy of
    'Joe Foster
    '
    ' Convert a currency value into an (American) English string

    Function English (ByVal N As Currency) As String
    Const Thousand = 1000@
    Const Million = Thousand * Thousand
    Const Billion = Thousand * Million
    Const Trillion = Thousand * Billion

    If (N = 0@) Then English = "zero": Exit Function

    Dim Buf As String: If (N < 0@) Then Buf = "negative " Else Buf = ""
    Dim Frac As Currency: Frac = Abs(N - Fix(N))
    If (N < 0@ Or Frac <> 0@) Then N = Abs(Fix(N))
    Dim AtLeastOne As Integer: AtLeastOne = N >= 1

    If (N >= Trillion) Then
    Debug.Print N
    Buf = Buf & EnglishDigitGroup(Int(N / Trillion)) & " trillion"
    N = N - Int(N / Trillion) * Trillion ' Mod overflows
    If (N >= 1@) Then Buf = Buf & " "
    End If

    If (N >= Billion) Then
    Debug.Print N
    Buf = Buf & EnglishDigitGroup(Int(N / Billion)) & " billion"
    N = N - Int(N / Billion) * Billion ' Mod still overflows
    If (N >= 1@) Then Buf = Buf & " "
    End If

    If (N >= Million) Then
    Debug.Print N
    Buf = Buf & EnglishDigitGroup(N \ Million) & " million"
    N = N Mod Million
    If (N >= 1@) Then Buf = Buf & " "
    End If

    If (N >= Thousand) Then
    Debug.Print N
    Buf = Buf & EnglishDigitGroup(N \ Thousand) & " thousand"
    N = N Mod Thousand
    If (N >= 1@) Then Buf = Buf & " "
    End If

    If (N >= 1@) Then
    Debug.Print N
    Buf = Buf & EnglishDigitGroup(N)
    End If

    If (Frac = 0@) Then
    Buf = Buf & " exactly"
    ElseIf (Int(Frac * 100@) = Frac * 100@) Then
    If AtLeastOne Then Buf = Buf & " and "
    Buf = Buf & Format$(Frac * 100@, "00") & "/100"
    Else
    If AtLeastOne Then Buf = Buf & " and "
    Buf = Buf & Format$(Frac * 10000@, "0000") & "/10000"
    End If

    English = Buf
    End Function

    ' Support function to be used only by English()
    Private Function EnglishDigitGroup (ByVal N As Integer) As String
    Const Hundred = " hundred"
    Const One = "one"
    Const Two = "two"
    Const Three = "three"
    Const Four = "four"
    Const Five = "five"
    Const Six = "six"
    Const Seven = "seven"
    Const Eight = "eight"
    Const Nine = "nine"
    Dim Buf As String: Buf = ""
    Dim Flag As Integer: Flag = False

    'Do hundreds
    Select Case (N \ 100)
    Case 0: Buf = "": Flag = False
    Case 1: Buf = One & Hundred: Flag = True
    Case 2: Buf = Two & Hundred: Flag = True
    Case 3: Buf = Three & Hundred: Flag = True
    Case 4: Buf = Four & Hundred: Flag = True
    Case 5: Buf = Five & Hundred: Flag = True
    Case 6: Buf = Six & Hundred: Flag = True
    Case 7: Buf = Seven & Hundred: Flag = True
    Case 8: Buf = Eight & Hundred: Flag = True
    Case 9: Buf = Nine & Hundred: Flag = True
    End Select

    If (Flag <> False) Then N = N Mod 100
    If (N > 0) Then
    If (Flag <> False) Then Buf = Buf & " "
    Else
    EnglishDigitGroup = Buf
    Exit Function
    End If

    'Do tens (except teens)
    Select Case (N \ 10)
    Case 0, 1: Flag = False
    Case 2: Buf = Buf & "twenty": Flag = True
    Case 3: Buf = Buf & "thirty": Flag = True
    Case 4: Buf = Buf & "forty": Flag = True
    Case 5: Buf = Buf & "fifty": Flag = True
    Case 6: Buf = Buf & "sixty": Flag = True
    Case 7: Buf = Buf & "seventy": Flag = True
    Case 8: Buf = Buf & "eighty": Flag = True
    Case 9: Buf = Buf & "ninety": Flag = True
    End Select

    If (Flag <> False) Then N = N Mod 10
    If (N > 0) Then
    If (Flag <> False) Then Buf = Buf & "-"
    Else
    EnglishDigitGroup = Buf
    Exit Function
    End If

    'Do ones and teens
    Select Case (N)
    Case 0: ' do nothing
    Case 1: Buf = Buf & One
    Case 2: Buf = Buf & Two
    Case 3: Buf = Buf & Three
    Case 4: Buf = Buf & Four
    Case 5: Buf = Buf & Five
    Case 6: Buf = Buf & Six
    Case 7: Buf = Buf & Seven
    Case 8: Buf = Buf & Eight
    Case 9: Buf = Buf & Nine
    Case 10: Buf = Buf & "ten"
    Case 11: Buf = Buf & "eleven"
    Case 12: Buf = Buf & "twelve"
    Case 13: Buf = Buf & "thirteen"
    Case 14: Buf = Buf & "fourteen"
    Case 15: Buf = Buf & "fifteen"
    Case 16: Buf = Buf & "sixteen"
    Case 17: Buf = Buf & "seventeen"
    Case 18: Buf = Buf & "eighteen"
    Case 19: Buf = Buf & "nineteen"
    End Select

    EnglishDigitGroup = Buf
    End Function
    '************ Code End **********


    Hello people, hours of search internet i found this function which the the code writer came up with a fuction to convert numetic to text

    this is the writer haven’t explain how to call this fuction

    Suppose the numeric amount field it txtAmount and display field is lbltextdisplay and the button is btnUpdate,

    Count anyone explain me how to call this function

    Sorry for my bad English

  2. #2
    Junior Member
    Join Date
    Apr 2009
    Posts
    25

    Re: Numeric to text Convertion

    that is in VB. probably your website is ASP.

    you need to include that file in an asp page then call the function English

    ex:
    English(some number)

Similar Threads

  1. Convert to numeric to Text Value
    By xzyrex in forum Database Discussion Forum
    Replies: 0
    Last Post: 09-21-2008, 02:04 AM
  2. Need help with convertion
    By zhexiang in forum eCommerce Discussion Forum
    Replies: 0
    Last Post: 02-14-2008, 11:39 PM
  3. Traffic VS Leads, Convertion ratio
    By gundul_mike in forum Content Discussion Forum
    Replies: 5
    Last Post: 06-14-2006, 12:34 AM
  4. Numeric digits are content !
    By Susmita in forum Search Engine Optimization Forum
    Replies: 2
    Last Post: 01-16-2006, 05:33 AM
  5. Need To Increase My Convertion
    By jontal in forum Marketing Strategies Discussion Forum
    Replies: 2
    Last Post: 11-18-2004, 07:59 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •