EXCEL中隐藏了一个数字转大写的函数NUMBERSTRING,但它仅支持正整数,用中文版的朋友可以试试这个函数:
=NUMBERSTRING(VALUE,TYPE)
NumberString(1234567890,1) = 一十二亿三千四百五十六万七千八百九十
NumberString(1234567890,2) = 壹拾贰亿叁仟肆佰伍拾陆万柒仟捌佰玖拾
NumberString(1234567890,3) = 一二三四五六七八九○
利用参数2,我们就可以用来完成人民币小写转化为大写,设数据在A1格,公式如下(由baohulu收集):
=IF(ISERROR(FIND(".",A1)),NUMBERSTRING(INT(A1),2)&"元整",IF(ISERROR(NUMBERSTRING(MID(A1,FIND(".",A1)+2,1),2)),NUMBERSTRING(INT(A1),2)&"元"&NUMBERSTRING(MID(A1,FIND(".",A1)+1,1),2)&"角整",NUMBERSTRING(INT(A1),2)&"元"&NUMBERSTRING(MID(A1,FIND(".",A1)+1,1),2)&"角"&NUMBERSTRING(MID(A1,FIND(".",A1)+2,1),2)&"分"))
当公式整数部份最大为15位时正确,结果舍去分(小数点第二位)以下数据。
