excel中数字转换英文大写程序.docx
excel中数字转换英文大写程序
Else
MyNumber=
EndIf
Count=Count+1
Loop
增加小数点描述
IfDec=Then
IfInte=Then
Dec=NoNumber!
EndIf
Else
IfInte=Then
Dec=ZeroPointDec
Else
Dec=PointDec
EndIf
EndIf
NumbToEnglish=InteDec
EndFunction
定义子函数,转换百位数
PrivateFunctionConvertHundreds(ByValMyNumber)
DimResultAsString
如果数字为空,退出.
IfVal(MyNumber)=0ThenExitFunction
在不满三位数的数字前补0.
MyNumber=Right(000MyNumber,3)
判断是否有百位数可供转换?
IfLeft(MyNumber,1)0Then
IfRight(000MyNumber,2)0Then
Result=ConvertDigit(Left(MyNumber,1))Hundredand
Else
Result=ConvertDigit(Left(MyNumber,1))Hundred
EndIf
EndIf
判断是否有十位数可供转换?
IfMid(MyNumber,2,1)0Then
Result=ResultConvertTens(Mid(MyNumber,2))
Else
如果没有,转换个位数.
Result=ResultConvertDigit(Mid(MyNumber,3))
EndIf
ConvertHundreds=Trim(Result)
EndFunction
定义子函数,转换十位数
PrivateFunctionConvertTens(ByValMyTens)
DimResultAsString
判断数字是否在10-19之间?
IfVal(Left(MyTens,1))=1Then
SelectCaseVal(MyTens)
Case10:Result=Ten
Case11:Result=Eleven
Case12:Result=Twelve
Case13:Result=Thirteen
Case14:Result=Fourteen
Case15:Result=Fifteen
Case16:Result=Sixteen
Case17:Result=Seventeen
Case18:Result=Eighteen
Case19:Result=Nineteen
CaseElse
EndSelect
Else
..否则,它是介于20