Microsoft Excel是Microsoft为使用Windows和Apple Macintosh操作系统的电脑编写的一款电子表格软件。直观的界面、出色的计算功能和图表工具,再加上成功的市场营销,使Excel成为最流行的个人计算机数据处理软件。 对于财务和会计领域的朋友们来说,在excel在录入数据后,将数字自动转换为人民币大写是每天都要做的工作之一。由于使用的频繁和简便,今天专门写下这篇文章分享给大家。 ????? Excel中也提供了将数字转成人民币大写的功能,就是使用“设置单元格格式--数字--特殊--中文大写数字”。比如:589.3转人民币大写后就是:伍佰捌拾玖.叁。只要用过的朋友们都知道使用excel的内置功能,将数字转人民币大写,转出来的结果还是不符合人民币的说明习惯,所以我们一般不会采用这种方法。 ????? 下面给大家分享的两种方法主要是通过函数嵌套和宏VBA自定义函数。 ????? EXCEL?数字转人民币大写的第一种方法:通过函数嵌套实现。有两种格式可供参考,详见下图: ????? 第一种数字转人民币大写形式的公式是: ????? =IF(B1<><> TEXT(INT(B1),"[dbnum2](人民币)G/通用格式")&"元"))))&IF((INT(B1*10)-INT(B1)*10)=0, IF(INT(B1*100)-INT(B1*10)*10=0,"","零"),(TEXT(INT(B1*10)-INT(B1)*10,"[dbnum2]")&"角")) & IF((INT(B1*100)-INT(B1*10)*10)=0,"整",TEXT((INT(B1*100)-INT(B1*10)*10),"[dbnum2]")&"分")? ????? 第二种数字转人民币大写形式的公式是: ????? ="大写金额:"&IF(TRIM(B1)="","",IF(B1=0,"","人民币"&IF(B1<> ",)&IF(INT(B1),TEXT(INT(ABS(B1)),"[dbnum2]")&"元 ",)&IF(INT(ABS(B1)*10)-INT(ABS(B1))*10,TEXT(INT(ABS(B1)*10)-INT(ABS(B1))*10,"[d bnum2]")&"角",IF(INT(ABS(B1))=ABS(B1),,IF(ABS(B1)<> ")))&IF(ROUND(ABS(B1)*100-INT(ABS(B1)*10)*10,),TEXT(ROUND(ABS(B1)*100-INT(ABS(B1)*10)*10,),"[dbnum2]")&"分","整")))
????? EXCEL?数字转人民币大写的第二种方法:通过宏VBA自定义函数实现。参考下图。 ????? 第一步:按下ALT+F11组合键,或者是单击工具——宏——Visual?Basic编辑器,进入Visual?Basic编程环境,单击“插入”?菜单——模块,复制下面代码,保存,退出关闭。Function?N2RMB(M) ????y?=?Int(Round(100?*?Abs(M))?/?100) ????j?=?Round(100?*?Abs(M)?+?0.00001)?-?y?*?100 ????f?=?(j?/?10?-?Int(j?/?10))?*?10 ????A?=?IIf(y?<> ????b?=?IIf(j?>?9.5,?Application.Text(Int(j?/?10),?"[DBNum2]")?&?"角",?IIf(y?1,?"",?iif(f?>?1,?"零",?""))) ????c?=?IIf(f?<> ????N2RMB?=?IIf(Abs(M)?<><> End?Function ????? 第二步:返回excel操作界面,在B1单元格输入:=?N2RMB?(A1),就可以将A1单元格的数字转为人民币大写,然后向下复制公式即可将全部的数字转为人民币大写。 ?1,?"",?iif(f?>
Excel整体界面趋于平面化,显得清新简洁。流畅的动画和平滑的过渡,带来不同以往的使用体验。
|