求vfp编写的小写金额转换为大写金额的源码
答案:2 悬赏:10 手机版
解决时间 2021-01-28 03:06
- 提问者网友:缘字诀
- 2021-01-27 13:04
求vfp编写的小写金额转换为大写金额的源码。
最佳答案
- 五星知识达人网友:愁杀梦里人
- 2021-01-27 14:19
借用别人的代码,已经在收费系统上运行一年多了,应该没问题了
FUNCTION rmbupper()
lParameters mmje &&输入变量:数字型,小于9万亿,大于-9万亿
Private dx,aa,i
dx=Iif(mmje<0,'负','')
aa=Round(Abs(mmje)*100,0)
For i=Len(Alltrim(Str(aa,15)))-1 To 0 Step -1
dx=dx+Subs('零壹贰叁肆伍陆柒捌玖',Int(Round(aa/10^i,10))*2+1,2)+Subs('分角元拾佰仟万拾佰仟亿拾佰仟万',i*2+1,2)
aa=Mod(aa,10^i)
Endf
dx=Strtran(Strtran(Strtran(Strtran(Strtran(dx,'零仟','零'),'零佰','零'),'零拾','零'),'零角','零'),'零分','整')
dx=Strtran(Strtran(Strtran(Strtran(Strtran(dx,'零零','零'),'零零','零'),'零亿','亿'),'零万','万'),'零元','元')
Return Iif(dx='整','零元整',Strtran(Strtran(dx,'亿万','亿'),'零整','整'))
ENDFUNC
FUNCTION rmbupper()
lParameters mmje &&输入变量:数字型,小于9万亿,大于-9万亿
Private dx,aa,i
dx=Iif(mmje<0,'负','')
aa=Round(Abs(mmje)*100,0)
For i=Len(Alltrim(Str(aa,15)))-1 To 0 Step -1
dx=dx+Subs('零壹贰叁肆伍陆柒捌玖',Int(Round(aa/10^i,10))*2+1,2)+Subs('分角元拾佰仟万拾佰仟亿拾佰仟万',i*2+1,2)
aa=Mod(aa,10^i)
Endf
dx=Strtran(Strtran(Strtran(Strtran(Strtran(dx,'零仟','零'),'零佰','零'),'零拾','零'),'零角','零'),'零分','整')
dx=Strtran(Strtran(Strtran(Strtran(Strtran(dx,'零零','零'),'零零','零'),'零亿','亿'),'零万','万'),'零元','元')
Return Iif(dx='整','零元整',Strtran(Strtran(dx,'亿万','亿'),'零整','整'))
ENDFUNC
全部回答
- 1楼网友:上分大魔王
- 2021-01-27 14:54
到技术网站问问高手
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯