如何在表格中设置自动显示数字的大写金额
答案:2 悬赏:20 手机版
解决时间 2021-02-19 20:11
- 提问者网友:嘚啵嘚啵
- 2021-02-19 14:48
如何在表格中设置自动显示数字的大写金额
最佳答案
- 五星知识达人网友:像个废品
- 2021-02-19 16:01
1 =SUBSTITUTE(SUBSTITUTE(TEXT(TRUNC(FIXED(A2)),"[>0][dbnum2]G/通用格式元;[<0]负[dbnum2]G/通用格式元;;")&TEXT(RIGHt(FIXED(A2),2),"[dbnum2]0角0分;;"&IF(ABS(A2)>1%,"整",)),"零角",IF(ABS(A2)<1,,"零")),"零分","整")
2 =SUBSTITUTE(SUBSTITUTE(IF(A2>-0.5%,,"负")&TEXT(INT(FIXED(ABS(A2))),"[dbnum2]G/通用格式元;;")&TEXT(RIGHt(FIXED(A2),2),"[dbnum2]0角0分;;"&IF(ABS(A2)>1%,"整",)),"零角",IF(ABS(A2)<1,,"零")),"零分","整")
3 =SUBSTITUTE(SUBSTITUTE(IF(A2>-0.5%,,"负")&TEXT(INT(ABS(A2)+0.5%),"[dbnum2]G/通用格式元;;")&TEXT(RIGHt(FIXED(A2),2),"[dbnum2]0角0分;;"&IF(ABS(A2)>1%,"整",)),"零角",IF(ABS(A2)<1,,"零")),"零分","整")
2 =SUBSTITUTE(SUBSTITUTE(IF(A2>-0.5%,,"负")&TEXT(INT(FIXED(ABS(A2))),"[dbnum2]G/通用格式元;;")&TEXT(RIGHt(FIXED(A2),2),"[dbnum2]0角0分;;"&IF(ABS(A2)>1%,"整",)),"零角",IF(ABS(A2)<1,,"零")),"零分","整")
3 =SUBSTITUTE(SUBSTITUTE(IF(A2>-0.5%,,"负")&TEXT(INT(ABS(A2)+0.5%),"[dbnum2]G/通用格式元;;")&TEXT(RIGHt(FIXED(A2),2),"[dbnum2]0角0分;;"&IF(ABS(A2)>1%,"整",)),"零角",IF(ABS(A2)<1,,"零")),"零分","整")
全部回答
- 1楼网友:孤老序
- 2021-02-19 16:10
你调用下面这个试试看
function moneytocharacter(money:real):string; //数字转换为中文大写
var
temp:string;
resu:string;
i,j:integer;
len:integer;
num:array[0..9] of string;
a:array[0..13] of string;
begin
num[0]:='零';
num[1]:='壹';
num[2]:='贰';
num[3]:='叁';
num[4]:='肆';
num[5]:='伍';
num[6]:='陆';
num[7]:='柒';
num[8]:='捌';
num[9]:='玖';
a[0]:='分';
a[1]:='角';
a[2]:='元';
a[3]:='拾';
a[4]:='佰';
a[5]:='仟';
a[6]:='万';
a[7]:='拾';
a[8]:='佰';
a[9]:='仟';
a[10]:='亿';
a[11]:='拾';
a[12]:='佰';
a[13]:='仟';
temp:=trim(inttostr(round(money*100)));
len:=length(temp);
resu:='';
if (len>13) or (len=0) then
begin
exit;
end;
for i:=1 to len do
begin
j:=strtoint(copy(temp,i,1));
resu:=resu+num[j]+a[len-i];
end;
result:=resu;
end;
如果你调用了这个还是不行的话,那问题可能出现在你之前写的代码那里了,如果这样的话,我觉得你还是换一个商业报表吧,至少据我所知像帆软报表这一类的商业报表是零编码设计,可以把你编写代码的时间节省下来很多
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯