January 9, 201214 yr I am looking for a function that will change a number, a dollar amount, to words. I have found two, http://help.filemaker.com/app/answers/detail/a_id/3443/related/1 and http://help.filemaker.com/app/answers/detail/a_id/2860/~/converting-numbers-to-words-or-numbers-to-text I have FM9 Adv. The first link is for a very old version, and the 2nd one fails at the very last ")" with an error. Any ideas out there? Thanks.
January 9, 201214 yr Author I found one, works like a charm. Let([ Millions=Int(Amount/1000000); Thousands=Int((Amount-(Millions * 1000000 ))/1000); Hundreds=Int(Mod(Amount;1000)); Cents=Round((Amount-Int(Amount))*100 +.00005; 2); Millions Text=Choose(Int(Millions/100) ;"";"One";"Two";"Three";"Four";"Five";"Six";"Seven";"Eight";"Nine") & If(Int(Millions/100) > 0;" Hundred ";"") & Choose(Int(Mod(Millions;100)/10);"";"";"Twenty ";"Thirty ";"Forty ";"Fifty"; "Sixty ";"Seventy ";"Eighty ";"Ninety ") & Choose(If(Mod(Millions;100) >= 20;Mod(Millions;10); Mod(Millions;100));""; "One " ;"Two " ;"Three " ;"Four " ;"Five " ;"Six " ;"Seven " ;"Eight ";"Nine " ; "Ten " ;"Eleven " ;"Twelve " ;"Thirteen " ;"Fourteen " ;"Fifteen ";"Sixteen " ; "Seventeen " ;"Eighteen " ;"Nineteen ") & If(Millions > 0;"Million ";""); Thousands Text=Choose(Int(Thousands/100);"";"One";"Two";"Three";"Four";"Five";"Six"; "Seven";"Eight";"Nine") & If(Int(Thousands/100) > 0;" Hundred ";"") & Choose(Int(Mod(Thousands;100)/10);"";"";"Twenty ";"Thirty ";"Forty";"Fifty "; "Sixty ";"Seventy ";"Eighty ";"Ninety ") & Choose(If(Mod(Thousands;100) >= 20;Mod(Thousands;10);Mod(Thousands;100)); "";"One " ;"Two " ;"Three " ;"Four " ;"Five " ;"Six " ;"Seven " ;"Eight ";"Nine " ; "Ten " ;"Eleven " ;"Twelve " ;"Thirteen " ;"Fourteen " ;"Fifteen ";"Sixteen " ; "Seventeen " ;"Eighteen " ;"Nineteen ") & If(Thousands > 0;"Thousand ";""); Hundreds Text=Choose(Int(Hundreds/100);"";"One";"Two";"Three";"Four";"Five";"Six"; "Seven";"Eight";"Nine") & If(Int(Hundreds/100) > 0;" Hundred ";"") & Choose(Int(Mod(Hundreds;100)/10);"";"";"Twenty ";"Thirty ";"Forty";"Fifty "; "Sixty ";"Seventy ";"Eighty ";"Ninety ") & Choose(If(Mod(Hundreds;100) >= 20;Mod(Hundreds;10);Mod(Hundreds;100)); "";"One " ;"Two " ;"Three " ;"Four " ;"Five " ;"Six " ;"Seven " ;"Eight ";"Nine " ; "Ten " ;"Eleven " ;"Twelve " ;"Thirteen " ;"Fourteen " ;"Fifteen ";"Sixteen " ; "Seventeen " ;"Eighteen " ;"Nineteen ") & If(Amount < 1;"No Dollars"; If(Amount < 2;"Dollar";"Dollars")) & " & "; Cents Text=Case(Mod(Cents;100) = 0; "00/100"; Mod(Cents;100) < 10; "0" & Mod(Cents;100); Mod(Cents;100) & "/100")]; Millions Text & Thousands Text & Hundreds Text & Cents Text)
January 9, 201214 yr Author the above I discovered has a bug, here is a correction: Cents Text=Case(Mod(Cents;100) = 0; "00/100"; Mod(Cents;100) < 1; "0" & Mod(Cents;100); Mod(Cents;100) & "/100")];
January 9, 201214 yr I found one, works like a charm. Why don't you post a link, so we'll know who you're praising/correcting.
January 9, 201214 yr Ah, it's from here: http://fmforums.com/forum/topic/23991-number-to-words-calc-100-one-hundred/page__view__findpost__p__134543 Too bad you didn't read the rest of the thread, and also: http://fmforums.com/forum/topic/49693-convert-numbers-to-text/page__view__findpost__p__232516
Create an account or sign in to comment