【EXCLE案例】Excel电子表格中将数字转化为大写金额(一个公式.八种函数应用详解)

更新时间:2023-09-03 12:01:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

付款单

单据编号:

供应商编号:

记帐日期:

公司代码:

付款金额

人民币:

文本:

审核人:制单人:washemeng 供应商名称:开单日期:公司名称:36,604,089.66币种:叁仟陆佰陆拾万肆仟零捌拾玖元陆角陆分CNY

案例说明:

公司财务对往来账业务进行处理过程中,需打印付款单,要求在录入小写“付款金额”后,大写金额:自动填列。

单元格B6函数编辑如下:

=IF(ROUND(B6,2)<0,"无效数值",IF(ROUND(B6,2)=0,"零",IF(ROUND(B6,2)<1,"",TEXT(INT(ROUND(B6,2)),"[dbnum2]")&"元")&IF(INT(ROUND(B6,2)*10)-

INT(ROUND(B6,2))*10=0,IF(INT(ROUND(B6,2))*(INT(ROUND(B6,2)*100)-INT(ROUND(B6,2)*10)*10)=0,"","零"),TEXT(INT(ROUND(B6,2)*10)-INT(ROUND(B6,2))*10,"[dbnum2]")&"角")&IF((INT(ROUND(B6,2)*100)-INT(ROUND(B6,2)*10)*10)=0,"整",TEXT((INT(ROUND(B6,2)*100)-INT(ROUND(B6,2)*10)*10),"[dbnum2]")&"分")))

函数应用分析:

一、ROUND,数学和三角函数:将数字按指定位数舍入

(ROUND(B6,2),即对单元格B6的内容进行四舍五入处理,且保留两位小数

二、INT,数学和三角函数:将数字向下舍入到最接近的整数

INT(ROUND(B6,2),即对单元格B6在进行四舍五入保留两位小数的基础上,去掉小数点后面的位数,即只显示整数,此时,INT(ROUND(B6,2)和INT(B6)效果是一样的。

三、TEXT,文本函数:设置数字格式并将其转换为文本;[dbnum2],格式函数

TEXT(INT(ROUND(B6,2)),"[dbnum2]"),即对INT(ROUND(B6,2))以[dbnum2]格式进行显示。

[dbnum2],为单元格格式代码(亦可称之为格式函数),格式描述为:中文大写数字,更多单元格格式代码,请点击查询

四、&,文本连接符,有合并单元格内容的功能,运用在函数公式中,起到连接文本(或是数字)内容的作用。

TEXT(INT(ROUND(B6,2)),"[dbnum2]")&"元",即将数字按要求转化为中文大写后加“元”,完成单元格B6“元”单位设置。

五、IF条件函数、IF嵌套函数、组合函数应用:第一层条件函数为:如果(ROUND(B6,2)<0,则单元格B6显示结果为“无效数值”,否则 (以第二层条件函数表达)

第二层条件函数为:如果(ROUND(B6,2)=0,则单元格B6显示结果为“零”,否则 (以&连接IF条件函数表达)

第三层条件函数为:嵌套组合函数,结构为:IF***&元IF***&角&IF***分

A、“元”位数据的读取:IF(ROUND(B6,2)<1,"",TEXT(INT(ROUND(B6,2)),"[dbnum2]")&"元")

读取个位数以上的数据,以“元”结束,如果小于1,则不必显示什么内容

B、“角”位数据的读取:IF(INT(ROUND(B6,2)*10)-INT(ROUND(B6,2))*10=0,IF(INT(ROUND(B6,2))*(INT(ROUND(B6,2)*100)-INT(ROUND(B6,2)*10)*10)=0,"","零"),TEXT(INT(ROUND(B6,2)*10)-INT(ROUND(B6,2))*10,"[dbnum2]")&"角")

第1层:如果单元格B6小数点后第一位为0,则 (以第2层条件函数表达),否则,计算为

“TEXT(INT(ROUND(B6,2)*10)-INT(ROUND(B6,2))*10,"[dbnum2]")&"角"”

付款单

单据编号:供应商编号:供应商名称:

第2层:在小数点后第二位(末位数)为0的情况下,对小数点后第一位数字计算为"",即不读取角位数据,否则(末位数不为0的情况),

小数点后第一位读取为“零”;

C、“分”位数据的读取:IF((INT(ROUND(B6,2)*100)-INT(ROUND(B6,2)*10)*10)=0,"整",TEXT((INT(ROUND(B6,2)*100)-INT(ROUND(B6,2)*10)*10),"[dbnum2]")&"分"))) 如果单元格B6末位数为0,则以“整”结束,而则就以“分”结束;

六、公式应用说明:

INT(ROUND(B6,2)*10),对单元格B6数字先扩大10倍再进行舍位,即去掉小数点后的位数,此时个位数为单元格B6数据的小数点后第一位数字;

INT(ROUND(B6,2))*10,对单元格B6数字先去掉小数点后的位数,再扩大10倍,此时,个位数为零;

INT(ROUND(B6,2)*10)-INT(ROUND(B6,2))*10=0,说明单元格B6小数点后第一位为“零”,否则结果就是单元格B6小数点后第一位数字!

INT(ROUND(B6,2)*100),对单元格B6数字先扩大100倍再进行舍位,即去掉小数点后的位数,此时个位数为单元格B6数据的小数点后第二位数字(亦即末位数)

INT(ROUND(B6,2)*10)*10,对单元格B6数字先扩大10倍再舍位,同时再扩大10倍,即将单元格B6数据的小数点后第二数(末位数)去掉后整体扩大100倍

INT(ROUND(B6,2)*100)-INT(ROUND(B6,2)*10)*10=0,说明单元格B6小数点后第二位为“零”,否则结果就是单元格B6小数点后第二位数字!

本文来源:https://www.bwwdw.com/article/wgri.html

Top