|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
本帖最后由 惠比特_IU 于 2020-9-7 17:36 编辑
Text的基本用法书中p221页是这样写的:
text(value,format_text)
format_text参数指定格式代码。
指定格式代码与自定义格式代码类似,分为4个条件段,各区段之间用半角分号间隔。
4个区段定义如下:
[>0];[<0];[=0];[文本]
3个区段:
[>0];[<0];[=0]
2个区段:
[>=0];[<0]
除了以上默认条件划分区段,还有自定义条件。
4区段含义:
[条件1];[条件2];[不满足条件的其他的值];[文本]
3区段含义:
[条件1];[条件2];[不满足条件的其他的值]
2区段含义:
[条件];[不满足条件的其他的值]
问题在示例12-13转换中文大写金额中
上表中的公式是:
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(IF(A38<0,"负",)&TEXT(INT(ABS(A38)),"[dbnum2];;")&TEXT(MOD(ABS(A38)*100,100),"[>9][dbnum2]圆0角0分;[=0]圆整;[dbnum2]圆零0分"),"零分","整"),"圆零",),"圆",)
问题是:TEXT(INT(ABS(A38)),"[dbnum2];;")书中解释是:Text将正数转为中文
大写数字,将零转换为1个空格。转换为中文大写数字理解了,但是将零转换为空格不理解,这究竟是套用默认的条件划分区段还是自定义条件划分区段的哪条?
|
|