在EXCEL表中把数字转化成中文大写金额格式是财务人员在日常工作中经常遇到的一个问题,虽然在EXCEL中的单元格格式设置中有一个特殊格式中可以转换在中文大写数字,但不能给出元、角、分整的中文金额特定格式,许多人最后只能手工输入,降低了EXCEL的使用效率,但如果TRUNC工作表函数,这个问题将迎刃而解,
如单元格E11=23421.72,须在某一格记录其中文大写金额,则在该格内输入函数:
="大写人民币:"&IF(TRUNC(E11)=0,"零元",TEXT(TRUNC(E11),"[DBNum2]G/通用格式")&"元")&IF(TRUNC(E11*10)-TRUNC(E11*10,-1)=0,"",TEXT(TRUNC(E11*10)-TRUNC(E11*10,-1),"[DBNum2]G/通用格式")&"角")&IF(TRUNC(E11*100)-TRUNC(E11*100,-1)=0,"",TEXT(TRUNC(E11*100)-TRUNC(E11*100,-1),"[DBNum2]G/通用格式")&"分")&IF(TRUNC(E11*100)-TRUNC(E11*100,-1)=0,"整
回车后将得到完整的大写中文金额格式,这个函数将广泛应用于支票打印、合同打印、和收据的开具等,方便快捷,提高工作效率。
这个函数的工作原理:把23421.72这个数字分成三段,整数位为一段,小数点后的第一位和第二位各为一段,利用&符号把三段和元、角、分及整字连接起来,关键是如何取到三段的值,就应用了一个TRUNC的工作表函数,这个函数的作用是将数字的小数部分截去,返回整数。第一段,直接可以截取,TRUNC(E11),返回23421,然后利用单元格格式设置把这个数转化成大写中文数字格式,"[DBNum2]G/通用格式",第二段,因为是小数点后的第一位,不是整数,则乘以10,转化成整数,TEXT(TRUNC(E11*10),返回234217,减去乘以10后的倒退一位取整,TRUNC(E11*10,-1),返回234210,结果是7,再转化成中文大写格式,第三段也同理,把单元格E11的数值乘100,按第二段方法取得2,转化成中文大写格式,然后用&符号把各段和"大写人民币:"、"元"、"角"、"分"、"整"等连接起来,得出你想要的结果。
实例:
0.00元 零元整
3.00元 叁元整
3.15元 叁元一角五分整下载本文