大写转化,人民币大写转换

时间:2023-11-26 18:44:19编辑:影视君

做会计凭证经常需要金额大小写转换,熟练掌握该技巧还是很必要的,今天我们就来学习下小写金额转换大写的方法。

金额小写转大写

比如A1单元格中为:12345.67

1、我们先用数字格式直接转换下看看是什么效果!

倒是转换成了大写金额的汉字,但是没有元整、角、分这样的格式。

2、下面我们用公式解决下:

在B1单元格中输入公式:

=TEXT(LEFT(RMB(A1),LEN(RMB(A1))-3),"[>0][dbnum2]G/通用格式元;[<0]负[dbnum2]G/通用格式元;;")&TEXT(RIGHT(RMB(A1),2),"[dbnum2]0角0分;;整")

效果如下:

这样才是我们想要的标准的会计大写金额的格式

公式解析:小数点左边部分:

首先用RMB将A1中的数字12345.67转化成标准的会计专用格式

=RMB(12345.67)结果为 ¥12,345.67

然后用LEFT函数提取整数部分

=LEFT(RMB(A1),LEN(RMB(A1))-3)

12345.67,总字符数减去小数点以及后两位(即3位)就是想要提取的整数部分的字符数

再将提取出来的整数部分用TEXT按照格式转换

[>0][dbnum2]G/通用格式元;[0][dbnum2]G/通用格式元;[<0]负[dbnum2]G/通用格式元;;")

小数点右边部分:道理和左边部分一样

用RIGHT函数提取右边两位小数

=RIGHT(RMB(A1),2)

用TEXT按照格式转换

[dbnum2]0角0分;;整

数字格式:正数;负数;零值;文本

如果是正数就按照[dbnum2]0角0分显示

如果是负数和零值就不显示文本显示整

=TEXT(RIGHT(RMB(A1),2),"[dbnum2]0角0分;;整")

两部分连接起来即可显示完整的转换结果。

思考:

用RMB只是为了规范数字格式,指定两位小数,那可以用round保留两位小数吗?如果A1中的数字是0,公式结果会是什么样?如果你希望数字为0时显示零元整该怎么修改公式。如果这几个问题可以解决,我相信你理解这个公式了。o(∩_∩)o 哈哈!

下面我们再来条公式:

=SUBSTITUTE(SUBSTITUTE(TEXT(INT(A1),"[DBNum2][$-804]G/通用格式元"&IF(INT(A1)=A1,"整",""))&TEXT(MID(A1,FIND(".",A1&".0")+1,1),"[DBNum2][$-804]G/通用格式角")&TEXT(MID(A1,FIND(".",A1&".0")+2,1),"[DBNum2][$-804]G/通用格式分"),"零角","零"),"零分","")

别看到这么长的公式就怕,像庖丁解牛一样给他分解下:

第一段蓝色部分是处理整数部分,若金额只有整数部分显示XX元整

第二段蓝色部分处理小数部分,会计专用格式小数部分只有两位,所以分别提取每一位,用角、分的格式显示

两个substitute主要是针对两个小数位数出现0时进行替换

如A1中为123.05,如果不加substitute,则显示壹佰贰拾叁圆零角伍分

用=substitute(a1,"零角","零"),这样就会显示壹佰贰拾叁圆零伍分

如A1中为123.50,如果不加substitute,则显示壹佰贰拾叁圆伍角零分

用=substitute(a1,"零分",""),这样就会显示壹佰贰拾叁圆伍角

累啊,写了这么多,不知道解释清楚了没?用F9逐段去理解,这样学习也会提高各位对公式的理解。

平时我们都是用&连接两个字符串,今天的例子中我们学到了用&连接两个公式。

3、如果你不是批量转化,而是想直接输入大写金额,怎么办呢?

我用的是QQ输入法,搜狗输入法也支持。

转自:米宏Office

上一篇:不相径庭

下一篇:今晚打老虎