excel金额大小写自动转换

怎样用vba编辑器,输入代码后,可以实现自动转换?!??!!?
我说的是用Vba!

兄弟,如果用VBA编写的话,是可以编写出来,可是你想过没有,这种用EXCEL中微软的函数就能解决的事情,你去寻求VBA解决,这就是舍本求末啊,一个人VB程序无论学的有多好,都是建立在微软程序的基础上的,如果你舍本逐末,用VBA写,恰恰违反了VBA语言的宗旨!请注意,
=IF(M13<0,"金额为负无效",IF((M13=0),"零元整",IF(M13<1,"",TEXT(INT(M13),"[dbnum2]G/通用格式"&"元")&IF(INT(M13*10)-INT(M13)*10=0,"",""))&IF(AND((INT(M13*100)-INT(M13*10)*10)<>0,(INT(M13*10)-INT(M13)*10)=0),"零",IF((INT(M13*10)-INT(M13)*10)=0,"",TEXT(INT(M13*10)-INT(M13)*10,"[dbnum2]G/通用格式"&"角")))&IF((INT(M13*100)-INT(M13*10)*10)=0,"整",TEXT(INT(M13*100)-INT(M13*10)*10,"[dbnum2]G/通用格式"&"分"))))
这个函数能满足你的条件,同时,他的反应速度绝对在你编写的VBA代码之上!
无论,你怎么用VBA,你都没有这个函数完美,这是微软的已经做出来的,你为什么还要用VBA,我过会写段代码!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-01-08
=IF(M13<0,"金额为负无效",IF((M13=0),"零元整",IF(M13<1,"",TEXT(INT(M13),"[dbnum2]G/通用格式"&"元")&IF(INT(M13*10)-INT(M13)*10=0,"",""))&IF(AND((INT(M13*100)-INT(M13*10)*10)<>0,(INT(M13*10)-INT(M13)*10)=0),"零",IF((INT(M13*10)-INT(M13)*10)=0,"",TEXT(INT(M13*10)-INT(M13)*10,"[dbnum2]G/通用格式"&"角")))&IF((INT(M13*100)-INT(M13*10)*10)=0,"整",TEXT(INT(M13*100)-INT(M13*10)*10,"[dbnum2]G/通用格式"&"分"))))
参照上述公式吧,上面的公式是把M13单元格的金额自动转换为人民币大写金额!本回答被网友采纳
第2个回答  2011-01-08
由数字小写转成大写,可使用文本函数DBNO2,如将C25中带2位小数的数字(123.45)转换成大写:=TEXT(C25*100,"[dbnum2]0万0仟0佰0拾0元0角0分"),其显示结果为:零万零仟壹佰贰拾叁元肆角伍分

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网