? Num2Text("999999999999999")
if @Error ? @Error endif
get $
Function Num2Text($n)
Dim $ones,$tens,$magnitudes
$ones="","One","Two","Three","Four","Five","Six","Seven","Eight","Nine","Ten",
"Eleven","Twelve","Thirteen","Fourteen","Fifteen","Sixteen","Seventeen","Eighteen","Nineteen"
$tens="","Ten","Twenty","Thirty","Forty","Fifty","Sixty","Seventy","Eighty","Ninety"
$magnitudes="Hundred","Thousand","Million","Billion","Trillion"
if $n<>CDbl($n) exit 87 endif
$n = CDbl($n)
if $n<1 exit 87 endif
Select
Case Len($n)=1
$Num2Text=$ones[$n]
Case Len($n)=2
if left($n,1)=1
$Num2Text=$ones[$n]
else
$Num2Text=Trim($tens[val($n/10)]+" "+Num2Text(right($n,1)))
endif
Case Len($n)=3
$Num2Text=Trim($ones[left($n,1)]+" Hundred "+Num2Text(right($n,2)))
Case Len($n)>3
$Num2Text=Trim(Num2Text(left($n,len($n)-((len($n)-1)/3)*3))+" "+
$magnitudes[(len($n)-1)/3]+" "+Num2Text(right($n,((len($n)-1)/3)*3)))
EndSelect
EndFunction