View Single Post
  #6   Report Post  
Posted to microsoft.public.excel.misc
Don Guillett
 
Posts: n/a
Default converting number to figures in words

Why are you posting the same thing 4 times with 4 different subject lines?
And, why are you NOT replying to the original post as is customary?

--
Don Guillett
SalesAid Software

"Kishor" wrote in message
...
Function InLetters(NumberToLeters)
x = Int(Round(NumberToLeters, 2))
DES = Right(Application.WorksheetFunction.Text(NumberToL eters, "0.00"), 2)

If DES 0 Then
des1 = " AND " & Right(DES, 2) & "/100 "
End If


FirstTwoDigits = Right(x, 2)
Onetonine = Array("", " ONE ", " TWO ", " THREE ", " FOUR ", " FIVE ", "
SIX
", " SEVEN ", " EIGHT ", " NINE ", " TEN ", _
" ELEVEN ", " TWELVE ", " THIRTEEN ", " FOURTEEN ", " FIFTEEN ", " SIXTEEN
", " SEVENTEEN ", " EIGHTEEN ", " NINETEEN ", " TWENTY ", _
" TWENTY ONE", " TWENTY TWO ", " TWENTY THREE ", " TWENTY FOUR ", " TWENTY
FIVE ", " TWENTY SIX ", " TWENTY SEVEN ", " TWENTY EIGHT ", " TWENTY NINE
",
" THIRTY ", _
" THIRTY ONE ", " THIRTY TWO ", " THIRTY THREE ", " THIRTY FOUR ", "
THIRTY
FIVE ", " THIRTY SIX ", " THIRTY SEVEN ", " THIRTY EIGHT ", " THIRTY NINE
",
" FORTY ", _
" FORTY ONE ", " FORTY TWO ", " FORTY THREE ", " FORTY FOUR ", " FORTY
FIVE
", " FORTY SIX ", " FORTY SEVEN ", " FORTY EIGHT ", " FORTY NINE ", "
FIFTY
", _
" FIFTY ONE ", " FIFTY TWO ", " FIFTY THREE ", " FIFTY FOUR ", " FIFTY
FIVE
", " FIFTY SIX ", " FIFTY SEVEN ", " FIFTY EIGHT ", " FIFTY NINE ", "
SIXTY
", _
" SIXTY ONE ", " SIXTY TWO ", " SIXTY THREE ", " SIXTY FOUR ", " SIXTY
FIVE
", " SIXTY SIX ", " SIXTY SEVEN ", " SIXTY EIGHT ", " SIXTY NINE ", "
SEVENTY
", _
" SEVENTY ONE ", " SEVENTY TWO ", " SEVENTY THREE ", " SEVENTY FOUR ", "
SEVENTY FIVE ", " SEVENTY SIX ", " SEVENTY SEVEN ", " SEVENTY EIGHT ", "
SEVENTY NINE ", " EIGHTY ", _
" EIGHTY ONE ", " EIGHTY TWO ", " EIGHTY THREE ", " EIGHTY FOUR ", "
EIGHTY
FIVE ", " EIGHTY SIX ", " EIGHTY SEVEN ", " EIGHTY EIGHT ", " EIGHTY NINE
",
" NINETY ", _
" NINETY ONE ", " NINETY TWO ", " NINETY THREE ", " NINETY FOUR ", "
NINETY
FIVE ", " NINETY SIX ", " NINETY SEVEN ", " NINETY EIGHT ", " NINETY NINE
")

FirstTwoDigits1 = Onetonine(FirstTwoDigits)

'---------------
ThirdDigit = Int(Right(x, 3) / 100)

If ThirdDigit 0 Then
ThirdDigit1 = Onetonine(ThirdDigit) & "HUNDRED"
End If

'----------------
FirstSixDigits = Right(x, 6)
NoOfThosands = Int(FirstSixDigits / 1000)

FourthAndFifthDigit = Right(NoOfThosands, 2)
If FourthAndFifthDigit 0 Then
FourthAndFifthDigit1 = Onetonine(FourthAndFifthDigit) & " THOUSAND "
End If
SixthDigit = Int(FirstSixDigits / 100000)
If SixthDigit 0 Then
SixthDigit1 = Onetonine(SixthDigit) & " HUNDRED "
End If
If FourthAndFifthDigit = 0 And SixthDigit 0 Then
SixthDigit2 = SixthDigit1 & "THOUSAND"
Else
SixthDigit2 = SixthDigit1
End If
'---------

SeventhAndEighth = Right(x, 8)
NoOfMillions = Int(SeventhAndEighth / 1000000)

If NoOfMillions 0 Then
NoOfMillions1 = Onetonine(NoOfMillions) & "MILLION"
End If

If NumberToLeters 0 And NumberToLeters < 100000000 Then
InLetters = Application.WorksheetFunction.Proper(Trim(NoOfMill ions1 &
SixthDigit2 & FourthAndFifthDigit1 & ThirdDigit1 & FirstTwoDigits1 & des1
& "
ONLY "))
End If
If NumberToLeters = 100000000 Then
InLetters = "HUNDRED MILLION ONLY "
End If

End Function


"Bob Phillips" wrote:

You're welcome. I created the page because it is a popular request.

--
HTH

Bob Phillips

(remove nothere from email address if mailing direct)

"Avinash" wrote in message
...
Bob,
thanks you are so dear. You have solved my problem. I appreciate you
for
giving some time to my problem.



"Bob Phillips" wrote:

http://www.xldynamic.com/source/xld.xlFAQ0004.html

--
HTH

Bob Phillips

(remove nothere from email address if mailing direct)

"Avinash" wrote in message
...
Can anybody tell me how to convert number in figures in words like
we
cinvert
currency in numbers to currency in words.