又有个问题请教高手,如何输入12.34,怎么显示成壹拾贰元叁角肆分,用EXCEL自带的格式也无法解决。谢谢
=IF(C10<0,"金额为负无效",IF(OR(C10=0,C10=""),"零元整",IF(C10<1,"",TEXT(INT(C10),"[dbnum2]G/通用格式")&"元"))) & IF(INT(C10*10)-INT(C10)*10=0,IF(INT(C10)*(INT(C10*100)-INT(C10*10)*10)=0,"","零"),TEXT(INT(C10*10)-INT(C10)*10,"[dbnum2]")&"角")&IF((INT(C10*100)-INT(C10*10)*10)=0,"整",TEXT((INT(C10*100)-INT(C10*10)*10),"[dbnum2]")&"分") 这个公式是好的,我现在考虑是否可以用宏来编一个函数来实现这个公式的功能。因为这个公式太复杂了。反正这个公式是能实现你的目的。
提问者对答案的评价:
用自定义函数来实现,使用跟内置函数一样,只是要把你的宏安全设置成中以下,建议设置成中,然后打开我上传的附件,会弹出宏安全提示窗口,这时点启用宏,这样就可以用我为你作的自定义函数,函数名为DX。具体见附件。附件:小写转大小自定义函数.xls
来个简单一点的公式:=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(TEXT(SZ,";负")&NUMBERSTRING(INT(ABS(SZ)),2)&"元"&TEXT(RIGHT(FIXED(SZ),2),"[dbnum2]0角0分;;整;"),"零分","整"),"零角","零"),"零元整","")注:公式中的“SZ”是对金额所在单元格的名称定义 |