Dear All,
Can anyone help me to have the spellnumber value in KD (Kuwait Dinar)? When I do the formula I am getting the value in USD.
Dear All,
Can anyone help me to have the spellnumber value in KD (Kuwait Dinar)? When I do the formula I am getting the value in USD.
To convert from dollars to dinar divide by 3.44
Regards
Special-K
Ensure you describe your problem clearly, I have little time available to solve these problems and do not appreciate numerous changes to them.
I am getting a value like this :Four Hundred Eighty Dollars and Seventy One Cents. Instead of Dollars I want to have it in KD. Pls help me
Hi,Originally Posted by Williams
Here's a link to the code you need, just edit it to the currency you want
http://support.microsoft.com/default...;EN-US;Q213360
oldchippy![]()
I did that too. When I first used the formula 'spellnumber' it was not at all working. Afterwards I had a google search and got the codes that I have to paste it in the module sheet. Afterwards I started getting the value in Dollars and Cents. I have seen others using this as Dhs (UAE). I am trying to get the codes to use it in KD and Fils.
Hi Williams,Originally Posted by Williams
Try this, I've replaced dollars and cents with Kuwait Dinars and fils, is this OK?
HTML Code:
Hi All
1. Start Microsoft Excel.
2. Press ALT+F11 to start the Visual Basic Editor.
3. On the Insert menu, click Module.
4. Copy & Paste the following code into the module sheet.
5. Go to Excel Sheet and put any Kuwaiti Dinar value with 3 decimals in cell A1
6. Type [I]=SpellNumber(A1)[/I] in cell B1
Hope it will solve your Problem
![]()
Option Explicit 'Main Function Function SpellNumber(ByVal MyNumber) Dim Dinars, Fils, Temp Dim DecimalPlace, Count ReDim Place(9) As String Place(2) = " Thousand " Place(3) = " Million " Place(4) = " Billion " Place(5) = " Trillion " ' String representation of amount. MyNumber = Trim(Str(MyNumber)) ' Position of decimal place 0 if none. DecimalPlace = InStr(MyNumber, ".") ' Convert Fils and set MyNumber to Dinar amount. If DecimalPlace > 0 Then Fils = GetHundreds(Left(Mid(MyNumber, DecimalPlace + 1) & _ "000", 3)) MyNumber = Trim(Left(MyNumber, DecimalPlace - 1)) End If Count = 1 Do While MyNumber <> "" Temp = GetHundreds(Right(MyNumber, 3)) If Temp <> "" Then Dinars = Temp & Place(Count) & Dinars If Len(MyNumber) > 3 Then MyNumber = Left(MyNumber, Len(MyNumber) - 3) Else MyNumber = "" End If Count = Count + 1 Loop Select Case Dinars Case "" Dinars = "No Dinars" Case "One" Dinars = "One Dinar" Case Else Dinars = Dinars & " Dinars" End Select Select Case Fils Case "" Fils = " and No Fils" Case "One" Fils = " and One Fils" Case Else Fils = " and " & Fils & " Fils" End Select SpellNumber = Dinars & Fils End Function ' Converts a number from 100-999 into text Function GetHundreds(ByVal MyNumber) Dim Result As String If Val(MyNumber) = 0 Then Exit Function MyNumber = Right("000" & MyNumber, 3) ' Convert the hundreds place. If Mid(MyNumber, 1, 1) <> "0" Then Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred " End If ' Convert the tens and ones place. If Mid(MyNumber, 2, 1) <> "0" Then Result = Result & GetTens(Mid(MyNumber, 2)) Else Result = Result & GetDigit(Mid(MyNumber, 3)) End If GetHundreds = Result End Function ' Converts a number from 10 to 99 into text. Function GetTens(TensText) Dim Result As String Result = "" ' Null out the temporary function value. If Val(Left(TensText, 1)) = 1 Then ' If value between 10-19... Select Case Val(TensText) 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 ' If value between 20-99... Select Case Val(Left(TensText, 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 Result = Result & GetDigit _ (Right(TensText, 1)) ' Retrieve ones place. End If GetTens = Result End Function ' Converts a number from 1 to 9 into text. Function GetDigit(Digit) Select Case Val(Digit) Case 1: GetDigit = "One" Case 2: GetDigit = "Two" Case 3: GetDigit = "Three" Case 4: GetDigit = "Four" Case 5: GetDigit = "Five" Case 6: GetDigit = "Six" Case 7: GetDigit = "Seven" Case 8: GetDigit = "Eight" Case 9: GetDigit = "Nine" Case Else: GetDigit = "" End Select End Function
Last edited by kaleeckal; 09-22-2010 at 02:55 PM.
but the result it is giving is in "Dinars" not in "Kuwaiti Dinars"
athwal2k,
Welcome to the Forum, unfortunately:
Your post does not comply with Rule 2 of our Forum RULES. Don't post a question in the thread of another member -- start your own thread. If you feel it's particularly relevant, provide a link to the other thread. It makes sense to have a new thread for your question because a thread with numerous replies can be off putting & difficult to pick out relevant replies.
If I have helped, Don't forget to add to my reputation (click on the star below the post)
Don't forget to mark threads as "Solved" (Thread Tools->Mark thread as Solved)
Use code tags when posting your VBA code: [code] Your code here [/code]
Hi everyone,
I need to convert Bahraini Dinars into words in Excel. I followed the steps in copying and pasting the formula in Module but still not working.
Btw, my excel version is 2007, could that be the reason why?
Thanks in advance.
Administrative Note:
Welcome to the forum.
We are happy to help, however whilst you feel your request is similar to this thread, experience has shown that things soon get confusing when answers refer to particular cells/ranges/sheets which are unique to your post and not relevant to the original.
Please see Forum Rule #4 about hijacking and start a new thread for your query.
If you are not familiar with how to start a new thread see the FAQ: How to start a new thread
Ali
Enthusiastic self-taught user of MS Excel who's always learning!
Don't forget to say "thank you" in your thread to anyone who has offered you help. It's a universal courtesy.
You can reward them by clicking on * Add Reputation below their user name on the left, if you wish.
NB: as a Moderator, I never accept friendship requests.
Forum Rules (updated August 2023): please read them here.
There are currently 1 users browsing this thread. (0 members and 1 guests)
Bookmarks