PC Review


Reply
Thread Tools Rate Thread

How do I turn dollar amounts into words?

 
 
=?Utf-8?B?VGhlcmVzYSBXcmlnaHQ=?=
Guest
Posts: n/a
 
      18th Jan 2005
If I type in, $256.00, I want it to show: Two Hundred Fifty-six and No/100
Dollars ($256.00). How can I do this?
 
Reply With Quote
 
 
 
 
Suzanne S. Barnhill
Guest
Posts: n/a
 
      18th Jan 2005
If the number is a field, you can use the \*DollarText switch. See the Help
topic "Format (\*) field switch."

--
Suzanne S. Barnhill
Microsoft MVP (Word)
Words into Type
Fairhope, Alabama USA
Word MVP FAQ site: http://word.mvps.org
Email cannot be acknowledged; please post all follow-ups to the newsgroup so
all may benefit.

"Theresa Wright" <(E-Mail Removed)> wrote in message
news:9A00C6E9-01C2-410D-BA84-(E-Mail Removed)...
> If I type in, $256.00, I want it to show: Two Hundred Fifty-six and No/100
> Dollars ($256.00). How can I do this?


 
Reply With Quote
 
Roger Ottaway
Guest
Posts: n/a
 
      18th Jan 2005
Do you know if this works with other languages. For example, if the computer
is setup in dutch, will it work in dutch as well ?

thanks ... Roger
"Suzanne S. Barnhill" <(E-Mail Removed)> wrote in message
news:eVBIeCZ$(E-Mail Removed)...
> If the number is a field, you can use the \*DollarText switch. See the

Help
> topic "Format (\*) field switch."
>
> --
> Suzanne S. Barnhill
> Microsoft MVP (Word)
> Words into Type
> Fairhope, Alabama USA
> Word MVP FAQ site: http://word.mvps.org
> Email cannot be acknowledged; please post all follow-ups to the newsgroup

so
> all may benefit.
>
> "Theresa Wright" <(E-Mail Removed)> wrote in

message
> news:9A00C6E9-01C2-410D-BA84-(E-Mail Removed)...
> > If I type in, $256.00, I want it to show: Two Hundred Fifty-six and

No/100
> > Dollars ($256.00). How can I do this?

>



 
Reply With Quote
 
Suzanne S. Barnhill
Guest
Posts: n/a
 
      18th Jan 2005
AFAIK, but you'd need to ask that in the
microsoft.public.word.international.features NG.

--
Suzanne S. Barnhill
Microsoft MVP (Word)
Words into Type
Fairhope, Alabama USA
Word MVP FAQ site: http://word.mvps.org
Email cannot be acknowledged; please post all follow-ups to the newsgroup so
all may benefit.

"Roger Ottaway" <(E-Mail Removed)> wrote in message
news:OXE3JiZ$(E-Mail Removed)...
> Do you know if this works with other languages. For example, if the

computer
> is setup in dutch, will it work in dutch as well ?
>
> thanks ... Roger
> "Suzanne S. Barnhill" <(E-Mail Removed)> wrote in message
> news:eVBIeCZ$(E-Mail Removed)...
> > If the number is a field, you can use the \*DollarText switch. See the

> Help
> > topic "Format (\*) field switch."
> >
> > --
> > Suzanne S. Barnhill
> > Microsoft MVP (Word)
> > Words into Type
> > Fairhope, Alabama USA
> > Word MVP FAQ site: http://word.mvps.org
> > Email cannot be acknowledged; please post all follow-ups to the

newsgroup
> so
> > all may benefit.
> >
> > "Theresa Wright" <(E-Mail Removed)> wrote in

> message
> > news:9A00C6E9-01C2-410D-BA84-(E-Mail Removed)...
> > > If I type in, $256.00, I want it to show: Two Hundred Fifty-six and

> No/100
> > > Dollars ($256.00). How can I do this?

> >

>
>


 
Reply With Quote
 
=?Utf-8?B?VGhlcmVzYSBXcmlnaHQ=?=
Guest
Posts: n/a
 
      24th Jan 2005
a field? i don't know what that is, but this is what i am doing: just typing
along regular text in a document and the dictation says, "$256.00, but spell
it out". i had a really great macro in word perfect that would change it,
but i can't seem to find anything like that in word.


"Suzanne S. Barnhill" wrote:

> If the number is a field, you can use the \*DollarText switch. See the Help
> topic "Format (\*) field switch."
>
> --
> Suzanne S. Barnhill
> Microsoft MVP (Word)
> Words into Type
> Fairhope, Alabama USA
> Word MVP FAQ site: http://word.mvps.org
> Email cannot be acknowledged; please post all follow-ups to the newsgroup so
> all may benefit.
>
> "Theresa Wright" <(E-Mail Removed)> wrote in message
> news:9A00C6E9-01C2-410D-BA84-(E-Mail Removed)...
> > If I type in, $256.00, I want it to show: Two Hundred Fifty-six and No/100
> > Dollars ($256.00). How can I do this?

>
>

 
Reply With Quote
 
Greg Maxey
Guest
Posts: n/a
 
      24th Jan 2005
I think I got this from Doug Robbins a while back. You have to select the
text then run the macro:

Option Explicit
Sub ConvertCurrencyToWords()
Dim MyNumber As Range
Set MyNumber = Selection.Range
MyNumber.Text = ConvertCurrencyToEnglish(ByVal MyNumber)
End Sub
Function ConvertCurrencyToEnglish(ByVal MyNumber)
Dim Temp
Dim Dollars, Cents
Dim DecimalPlace, Count

ReDim Place(9) As String
Place(2) = " Thousand "
Place(3) = " Million "
Place(4) = " Billion "
Place(5) = " Trillion "

MyNumber = Trim(Str(MyNumber))

DecimalPlace = InStr(MyNumber, ".")
If DecimalPlace > 0 Then
Temp = Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2)
Cents = ConvertTens(Temp)
MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
End If
Count = 1
Do While MyNumber <> ""
'convert last 3 digits to English Dollars
Temp = ConvertHundreds(Right(MyNumber, 3))
If Temp <> "" Then Dollars = Temp & Place(Count) & Dollars
If Len(MyNumber) > 3 Then
'remove last 3 comverted digits
MyNumber = Left(MyNumber, Len(MyNumber) - 3)
Else
MyNumber = ""
End If
Count = Count + 1
Loop

'clean up dollars
Select Case Dollars
Case ""
Dollars = "NoDollars"
Case "One"
Dollars = "One Dollar"
Case Else
Dollars = Dollars & " Dollars"
End Select

'clean up cents
Select Case Cents
Case ""
Cents = " And No Cents"
Case "One"
Cents = " And One Cent"
Case Else
Cents = " And " & Cents & " Cents"
End Select
ConvertCurrencyToEnglish = Dollars & Cents
End Function
Private Function ConvertHundreds(ByVal MyNumber)
Dim Result As String
If Val(MyNumber) = 0 Then Exit Function

'append leading zeros to number
MyNumber = Right("000" & MyNumber, 3)

'do we have hundreds place digit to convert?
If Left(MyNumber, 1) <> "0" Then
Result = ConvertDigit(Left(MyNumber, 1)) & " Hundred "
End If

'do we have tens place digit to convert?
If Mid(MyNumber, 2, 1) <> "0" Then
Result = Result & ConvertTens(Mid(MyNumber, 2))
Else
'if not, then convert the ones place digit
Result = Result & ConvertDigit(Mid(MyNumber, 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
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
Private Function ConvertDigit(ByVal MyDigit)
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

--
Greg Maxey/Word MVP
A Peer in Peer to Peer Support

Theresa Wright wrote:
> a field? i don't know what that is, but this is what i am doing: just
> typing along regular text in a document and the dictation says,
> "$256.00, but spell it out". i had a really great macro in word
> perfect that would change it, but i can't seem to find anything like
> that in word.
>
>
> "Suzanne S. Barnhill" wrote:
>
>> If the number is a field, you can use the \*DollarText switch. See
>> the Help topic "Format (\*) field switch."
>>
>> --
>> Suzanne S. Barnhill
>> Microsoft MVP (Word)
>> Words into Type
>> Fairhope, Alabama USA
>> Word MVP FAQ site: http://word.mvps.org
>> Email cannot be acknowledged; please post all follow-ups to the
>> newsgroup so all may benefit.
>>
>> "Theresa Wright" <(E-Mail Removed)> wrote in
>> message news:9A00C6E9-01C2-410D-BA84-(E-Mail Removed)...
>>> If I type in, $256.00, I want it to show: Two Hundred Fifty-six and
>>> No/100 Dollars ($256.00). How can I do this?



 
Reply With Quote
 
=?Utf-8?B?VGhlcmVzYSBXcmlnaHQ=?=
Guest
Posts: n/a
 
      25th Jan 2005
Greg,
Without meaning to sound really really dumb, what do i do with all these
instructions? do i copy and paste it into something?

"Greg Maxey" wrote:

> I think I got this from Doug Robbins a while back. You have to select the
> text then run the macro:
>
> Option Explicit
> Sub ConvertCurrencyToWords()
> Dim MyNumber As Range
> Set MyNumber = Selection.Range
> MyNumber.Text = ConvertCurrencyToEnglish(ByVal MyNumber)
> End Sub
> Function ConvertCurrencyToEnglish(ByVal MyNumber)
> Dim Temp
> Dim Dollars, Cents
> Dim DecimalPlace, Count
>
> ReDim Place(9) As String
> Place(2) = " Thousand "
> Place(3) = " Million "
> Place(4) = " Billion "
> Place(5) = " Trillion "
>
> MyNumber = Trim(Str(MyNumber))
>
> DecimalPlace = InStr(MyNumber, ".")
> If DecimalPlace > 0 Then
> Temp = Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2)
> Cents = ConvertTens(Temp)
> MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
> End If
> Count = 1
> Do While MyNumber <> ""
> 'convert last 3 digits to English Dollars
> Temp = ConvertHundreds(Right(MyNumber, 3))
> If Temp <> "" Then Dollars = Temp & Place(Count) & Dollars
> If Len(MyNumber) > 3 Then
> 'remove last 3 comverted digits
> MyNumber = Left(MyNumber, Len(MyNumber) - 3)
> Else
> MyNumber = ""
> End If
> Count = Count + 1
> Loop
>
> 'clean up dollars
> Select Case Dollars
> Case ""
> Dollars = "NoDollars"
> Case "One"
> Dollars = "One Dollar"
> Case Else
> Dollars = Dollars & " Dollars"
> End Select
>
> 'clean up cents
> Select Case Cents
> Case ""
> Cents = " And No Cents"
> Case "One"
> Cents = " And One Cent"
> Case Else
> Cents = " And " & Cents & " Cents"
> End Select
> ConvertCurrencyToEnglish = Dollars & Cents
> End Function
> Private Function ConvertHundreds(ByVal MyNumber)
> Dim Result As String
> If Val(MyNumber) = 0 Then Exit Function
>
> 'append leading zeros to number
> MyNumber = Right("000" & MyNumber, 3)
>
> 'do we have hundreds place digit to convert?
> If Left(MyNumber, 1) <> "0" Then
> Result = ConvertDigit(Left(MyNumber, 1)) & " Hundred "
> End If
>
> 'do we have tens place digit to convert?
> If Mid(MyNumber, 2, 1) <> "0" Then
> Result = Result & ConvertTens(Mid(MyNumber, 2))
> Else
> 'if not, then convert the ones place digit
> Result = Result & ConvertDigit(Mid(MyNumber, 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
> 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
> Private Function ConvertDigit(ByVal MyDigit)
> 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
>
> --
> Greg Maxey/Word MVP
> A Peer in Peer to Peer Support
>
> Theresa Wright wrote:
> > a field? i don't know what that is, but this is what i am doing: just
> > typing along regular text in a document and the dictation says,
> > "$256.00, but spell it out". i had a really great macro in word
> > perfect that would change it, but i can't seem to find anything like
> > that in word.
> >
> >
> > "Suzanne S. Barnhill" wrote:
> >
> >> If the number is a field, you can use the \*DollarText switch. See
> >> the Help topic "Format (\*) field switch."
> >>
> >> --
> >> Suzanne S. Barnhill
> >> Microsoft MVP (Word)
> >> Words into Type
> >> Fairhope, Alabama USA
> >> Word MVP FAQ site: http://word.mvps.org
> >> Email cannot be acknowledged; please post all follow-ups to the
> >> newsgroup so all may benefit.
> >>
> >> "Theresa Wright" <(E-Mail Removed)> wrote in
> >> message news:9A00C6E9-01C2-410D-BA84-(E-Mail Removed)...
> >>> If I type in, $256.00, I want it to show: Two Hundred Fifty-six and
> >>> No/100 Dollars ($256.00). How can I do this?

>
>
>

 
Reply With Quote
 
Greg Maxey
Guest
Posts: n/a
 
      25th Jan 2005
Theresa,

Pal Graham Mayor has a nice way of showing you how to do this without making
you sound dumb or stupid at all :-).

http://www.gmayor.com/installing_macro.htm

--
Greg Maxey/Word MVP
A Peer in Peer to Peer Support

Theresa Wright wrote:
> Greg,
> Without meaning to sound really really dumb, what do i do with all
> these instructions? do i copy and paste it into something?
>
> "Greg Maxey" wrote:
>
>> I think I got this from Doug Robbins a while back. You have to
>> select the text then run the macro:
>>
>> Option Explicit
>> Sub ConvertCurrencyToWords()
>> Dim MyNumber As Range
>> Set MyNumber = Selection.Range
>> MyNumber.Text = ConvertCurrencyToEnglish(ByVal MyNumber)
>> End Sub
>> Function ConvertCurrencyToEnglish(ByVal MyNumber)
>> Dim Temp
>> Dim Dollars, Cents
>> Dim DecimalPlace, Count
>>
>> ReDim Place(9) As String
>> Place(2) = " Thousand "
>> Place(3) = " Million "
>> Place(4) = " Billion "
>> Place(5) = " Trillion "
>>
>> MyNumber = Trim(Str(MyNumber))
>>
>> DecimalPlace = InStr(MyNumber, ".")
>> If DecimalPlace > 0 Then
>> Temp = Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2)
>> Cents = ConvertTens(Temp)
>> MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
>> End If
>> Count = 1
>> Do While MyNumber <> ""
>> 'convert last 3 digits to English Dollars
>> Temp = ConvertHundreds(Right(MyNumber, 3))
>> If Temp <> "" Then Dollars = Temp & Place(Count) & Dollars
>> If Len(MyNumber) > 3 Then
>> 'remove last 3 comverted digits
>> MyNumber = Left(MyNumber, Len(MyNumber) - 3)
>> Else
>> MyNumber = ""
>> End If
>> Count = Count + 1
>> Loop
>>
>> 'clean up dollars
>> Select Case Dollars
>> Case ""
>> Dollars = "NoDollars"
>> Case "One"
>> Dollars = "One Dollar"
>> Case Else
>> Dollars = Dollars & " Dollars"
>> End Select
>>
>> 'clean up cents
>> Select Case Cents
>> Case ""
>> Cents = " And No Cents"
>> Case "One"
>> Cents = " And One Cent"
>> Case Else
>> Cents = " And " & Cents & " Cents"
>> End Select
>> ConvertCurrencyToEnglish = Dollars & Cents
>> End Function
>> Private Function ConvertHundreds(ByVal MyNumber)
>> Dim Result As String
>> If Val(MyNumber) = 0 Then Exit Function
>>
>> 'append leading zeros to number
>> MyNumber = Right("000" & MyNumber, 3)
>>
>> 'do we have hundreds place digit to convert?
>> If Left(MyNumber, 1) <> "0" Then
>> Result = ConvertDigit(Left(MyNumber, 1)) & " Hundred "
>> End If
>>
>> 'do we have tens place digit to convert?
>> If Mid(MyNumber, 2, 1) <> "0" Then
>> Result = Result & ConvertTens(Mid(MyNumber, 2))
>> Else
>> 'if not, then convert the ones place digit
>> Result = Result & ConvertDigit(Mid(MyNumber, 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
>> 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
>> Private Function ConvertDigit(ByVal MyDigit)
>> 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
>>
>> --
>> Greg Maxey/Word MVP
>> A Peer in Peer to Peer Support
>>
>> Theresa Wright wrote:
>>> a field? i don't know what that is, but this is what i am doing:
>>> just typing along regular text in a document and the dictation says,
>>> "$256.00, but spell it out". i had a really great macro in word
>>> perfect that would change it, but i can't seem to find anything like
>>> that in word.
>>>
>>>
>>> "Suzanne S. Barnhill" wrote:
>>>
>>>> If the number is a field, you can use the \*DollarText switch. See
>>>> the Help topic "Format (\*) field switch."
>>>>
>>>> --
>>>> Suzanne S. Barnhill
>>>> Microsoft MVP (Word)
>>>> Words into Type
>>>> Fairhope, Alabama USA
>>>> Word MVP FAQ site: http://word.mvps.org
>>>> Email cannot be acknowledged; please post all follow-ups to the
>>>> newsgroup so all may benefit.
>>>>
>>>> "Theresa Wright" <(E-Mail Removed)> wrote in
>>>> message news:9A00C6E9-01C2-410D-BA84-(E-Mail Removed)...
>>>>> If I type in, $256.00, I want it to show: Two Hundred Fifty-six
>>>>> and No/100 Dollars ($256.00). How can I do this?



 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Rounding dollar amounts in half dollar increments DC Microsoft Excel Worksheet Functions 2 20th Jan 2010 04:19 PM
Comparing Row by Row - A-D dollar amounts to E dollar amount Mel Microsoft Excel Worksheet Functions 9 20th Nov 2008 09:50 PM
Lining Up Dollar Amounts Marie FP Microsoft Word Document Management 12 17th Oct 2008 07:29 PM
dollar amounts =?Utf-8?B?YWNzbmV0dA==?= Microsoft Excel New Users 3 30th Aug 2005 01:53 AM
rounding dollar amounts Dave Microsoft Excel Worksheet Functions 2 1st Nov 2003 03:32 PM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 06:37 PM.