分享

数字金额转中文大写金额

 L罗乐 2019-08-19

本文转载自公众号:涂涂说Excel,作者:涂大荣。本文著作权归原创作者所有,本人收藏此文仅作为学习之用,不作其他目的,如有侵权请联系我删除。

大家好!我是涂涂

数字金额转中文大写金额。

在Excel中,通过设置单元格格式,可以将数字转为中文大写数字,如下图。然而这往往不是我们想要的结果。

通过TEXT函数及其它函数的组合,可以实现我们想要的效果。比如“-123456.01“,显示为:负壹拾贰万叁仟肆佰伍拾陆元零壹分

公式解释:

=TEXT(TRUNC(RMB(A2)),'[dbnum2]G/通用格式元;[dbnum2]负G/通用格式元;')&IF(--RIGHT(RMB(A2),2)=0,'整',TEXT(LEFT(RIGHT(RMB(A2),2),1),'[dbnum2]0角;;零'))&TEXT(RIGHT(RMB(A2),1),'[dbnum2]0分;;')

        公式很长,咱们细看会发现,公式其实是由三部分组成:金额的元位,金额的角位,金额的分位,然后各部分使用“&”连接符连接起来。

元位部分

TEXT(TRUNC(RMB(A2)),'[dbnum2]G/通用格式元;[dbnum2]负G/通用格式元;')

◆TRUNC(RMB(A2))

RMB函数将数字以货币格式显示,并且小数点保留2位小数

TRUNC函数将数字的小数部分截去,返回整数

◆[dbnum2]G/通用格式元

格式转换,将数字转换为中文大写数字,比如12,转换成“壹拾贰“。前面的负字是识别”-“负号。后面的”元“字是单位

◆使用TEXT函数将整数部分的数字转为中文大写数字

角位部分

IF(--RIGHT(RMB(A2),2)=0,'整',TEXT(LEFT(RIGHT(RMB(A2),2),1),'[dbnum2]0角;;零'))

◆--RIGHT(RMB(A2),2)=0

使用RIGHT函数提取金额小数点右边的2位数字,判定角位及分位是否都是0;两个减号是将文本数值转真正数值

◆TEXT(LEFT(RIGHT(RMB(A2),2),1),'[dbnum2]0角;;零')

使用TEXT函数将角位数字转为中文大写数字

分位部分

TEXT(RIGHT(RMB(A2),1),'[dbnum2]0分;;')

◆解释同上

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多