如题所述
第1个回答 2020-04-02
用NUMBERSTRING()
NumberString函数可以方便的实现小写到大写的转化,而且有三个参数可以选择,分别符合中国人不同的大写方式。但不支持有上小数的数字的。
NumberString(1234567890,1)
=
一十二亿三千四百五十六万七千八百九十
NumberString(1234567890,2)
=
壹拾贰亿叁仟肆佰伍拾陆万柒仟捌佰玖拾
NumberString(1234567890,3)
=
一二三四五六七八九○
修正的公式可以实现你的功能,A1单元格是对应单元格,其它单元格把公式中的A1换掉:
=NUMBERSTRING(A1,2)&"元"&IF(INT(A1)=A1,"整",NUMBERSTRING(MID(A1,FIND(".",A1)+1,1),2)&IF(MID(A1,FIND(".",A1)+1,1)="0","零","角")&IF(INT(A1*10)=A1*10,"整",NUMBERSTRING(MID(A1,FIND(".",A1)+2,1),2)&"分"))
如果你真想用十百千,而不想用拾佰仟,就把NUMBERSTRING()中的2改为1,共3处。
NumberString函数可以方便的实现小写到大写的转化,而且有三个参数可以选择,分别符合中国人不同的大写方式。但不支持有上小数的数字的。
NumberString(1234567890,1)
=
一十二亿三千四百五十六万七千八百九十
NumberString(1234567890,2)
=
壹拾贰亿叁仟肆佰伍拾陆万柒仟捌佰玖拾
NumberString(1234567890,3)
=
一二三四五六七八九○
修正的公式可以实现你的功能,A1单元格是对应单元格,其它单元格把公式中的A1换掉:
=NUMBERSTRING(A1,2)&"元"&IF(INT(A1)=A1,"整",NUMBERSTRING(MID(A1,FIND(".",A1)+1,1),2)&IF(MID(A1,FIND(".",A1)+1,1)="0","零","角")&IF(INT(A1*10)=A1*10,"整",NUMBERSTRING(MID(A1,FIND(".",A1)+2,1),2)&"分"))
如果你真想用十百千,而不想用拾佰仟,就把NUMBERSTRING()中的2改为1,共3处。