~~~~~~中文大写的分割线~~~~~~
格式转换
【方法】选中阿拉伯数字单元格---设置单元格格式--特殊--中文小写/中文大写
【原理】改变单元格显示格式(即只改变单元格的格式,不改变单元格内容,故只为”形变而神不变“)
【优点】简单易操作
【缺点】单纯”翻译“数字,不能直接应用于”财务“统计
------------------------------------
NumberString函数转换
【方法】NumberString(数字,形式参数) ,形式参数可以为1、2、3三个值
【原理】通过函数改变单元格内容(即不受单元格显示格式影响)
【优点】简单易操作
【缺点】①单纯”翻译“数字,不能直接应用于”财务“统计;②小数位数字不参与转化,并自动四舍五入至整数位;③数值为负数时,函数返回结果出错
------------------------------------
嵌套函数转换
【方法1】
=(IF(A2<1,"",TEXT(INT(A2),"[dbnum2]G/通用格式")&"元")&IF((INT(A2*10)-INT(A2)*10)=0,IF(INT(A2*100)-INT(A2*10)*10=0,"","零"),(TEXT(INT(A2*10)-INT(A2)*10,"[dbnum2]")&"角"))&IF((INT(A2*100)-INT(A2*10)*10)=0,"整",TEXT((INT(A2*100)-INT(A2*10)*10),"[dbnum2]")&"分")))))
【原理】INT函数对数值进行位数分离(即分出小数位、个位、十位等等);TEXT函数转化数据显示格式并把单位“分”、“角”、“元”与对应数位进行连接;IF函数补充数据小于零或者等于零的情况
【缺点】数据位数超过分位时,只取到分位,无进位(例如1203.588转化为1203.58,而不进位为1203.59)
【特点】“整”位于角位后(例如贰佰元捌角整)
------------------------------------
【方法2】
=IF(TRIM(A2)="","",IF(A2=0,"",IF(A2<0,"负",)&IF(INT(A2),TEXT(INT(ABS(A2)),"[dbnum2]")&"元",)&IF(INT(ABS(A2)*10)-INT(ABS(A2))*10,TEXT(INT(ABS(A2)*10)-INT(ABS(A2))*10,"[dbnum2]")&"角",IF(INT(ABS(A2))=ABS(A2),,IF(ABS(A2)<0.1,,"零")))&IF(ROUND(ABS(A2)*100-INT(ABS(A2)*10)*10,),TEXT(ROUND(ABS(A2)*100-INT(ABS(A2)*10)*10,),"[dbnum2]")&"分","整")))
【原理】ABS函数对数字取绝对值,保证函数整体对于负值也可以进行转换;ROUND函数对小数位数小于分位的数值进行四舍五入;TRIM函数剔除空单元格,使其不参与转化
【特点】“整”取到角位(例如贰佰元捌角整)
------------------------------------
【方法3】
=IF(A2="","",IF(A2=0,"零",IF(A2<0,"负","")&IF(ABS(A2)>=1,TEXT(INT(ROUND(ABS(A2),2)),"[dbnum2]")&"元","")&SUBSTITUTE(SUBSTITUTE(TEXT(RIGHT(RMB(A2,2),2),"[dbnum2]0角0分;;整"),"零角",IF(A2^2<1,,"零")),"零分","")))
【原理】RMB函数将数值转化为大写格式并保留小数点后两位(同时四舍五入);SUBSTITUTE函数当角位、分位数值不为零时,替换“整”为“零角”或“零分”
【特点】“整”取到元位(例如伍佰零肆元整)
------------------------------------
PS:细心的小伙伴可能发现,这三种嵌套函数都有一个共同之处就是[dbnum2]。其实这是一个格式函数,和NumberString(数字,2)作用一样,即将数字转换成中文大写格式。
-------------------------------------
以上就是表妹目前发现的易用性较好的几种中文大写转化方法,小伙伴们可以根据自己的需要进行适当调整后使用,当然要是小伙伴还有更好的方法,也欢迎给表妹留言炫耀哟!
如果你觉得表妹的分享内容很实用,欢迎分享给其他小伙伴呦,独乐乐不如众乐乐嘛!长按二维码图片,识别图中二维码,关注“表妹的EXCEL”,每周一、三、五获取原创分享教程。加入“表妹的EXCEL群”,和勤奋好学的小伙伴们一起快乐地学习EXCEL吧!
微信公众号 QQ学习群