• 注册
  • 你转发,我送钱!

    • 查看作者
    • 【视频教程】EXCEL财务小技巧–人民币数字金额转汉字大写公式

      人民币阿拉伯数字转换为大写汉字

      前几天又被问到人民币大写,正好想起来以前收集的这个公式,当时是做一个空调安装报价系统,所以在网上找到了这个公式,公式看起来很复杂,不过结构并不复杂,有兴趣的可以研究下,不过学会用还是很简单的

      最近看到个短的  实测也很好 就用这个吧

      =IF(E1<0,"负","")&TEXT(INT(ABS(E1)),"[dbnum2]")&"元"&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(TEXT(RIGHT(E1*100,2),"[dbnum2]0角0分"),"零角零分","整"),"零分","整"),"零角","零")

      公式如下:

      ="大写:"&IF(ABS(E1)<0.005,"",IF(E1<0,"负",)&IF(INT(ABS(E1)),TEXT(INT(ABS(E1)),"[dbnum2]")&"元",)&IF(INT(ABS(E1)*10)-INT(ABS(E1))*10,TEXT(INT(ABS(E1)*10)-INT(ABS(E1))*10,"[dbnum2]")&"角",IF(INT(ABS(E1))=ABS(E1),,IF(ABS(E1)<0.1,,"零")))&IF(ROUND(ABS(E1)*100-INT(ABS(E1)*10)*10,),TEXT(ROUND(ABS(E1)*100-INT(ABS(E1)*10)*10,),"[dbnum2]")&"分","整"))

      在实际用的时候 先把这个公式复制到记事本里,比如你要将A1的数字转化成人民币大写,那就用记事本的替换功能将E1替换成A1,在将公式复制粘贴到要显示大写的单元格即可

      应用的结果示范如下

      另外这个公式是个引子,需要的最终格式和这有点不一样,那也可以根据这个公式做一些简单改变,比如说总是要得到要得到 *元*角*分的样子 那就写成

      ="人民币"&IF(ABS(AG10)<0.005,"",IF(AG10<0,"负",)&IF(INT(ABS(AG10)),TEXT(INT(ABS(AG10)),"[dbnum2]")&"元",)&IF(INT(ABS(AG10)*10)-INT(ABS(AG10))*10,TEXT(INT(ABS(AG10)*10)-INT(ABS(AG10))*10,"[dbnum2]")&"角",IF(INT(ABS(AG10))=ABS(AG10),"零角",IF(ABS(AG10)<0.1,,"零")))&TEXT(ROUND(ABS(AG10)*100-INT(ABS(AG10)*10)*10,),"[dbnum2]")&"分")

      注意这里目标单元格时AG10,结果如下

      人民币伍万肆仟零叁拾元零角零分
      54030

    • 0
    • 0
    • 0
    • 33
    • 单栏布局 侧栏位置: