以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- excel报表里的空值问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=98584) |
-- 作者:海阔天空pl -- 发布时间:2017/4/1 14:40:00 -- excel报表里的空值问题 Excel报表里设置了年、月列,分别取值于表的[日期]列:YEAR([日期])、MONTH([日期]),当日期列是空的时候,报表里出来的是1899、 12,请问怎么出来报表里的空值问题?IIF([日期] Is Null, **, **)不起作用,报表出来直接全都是空的。 |
-- 作者:有点蓝 -- 发布时间:2017/4/1 15:34:00 -- <IIF([日期] Is Null, "", YEAR([日期]))> |
-- 作者:海阔天空pl -- 发布时间:2017/4/1 19:23:00 -- Is Null 貌似在excel报表里不起作用?我试过<IIF([日期] Is Null, 0, YEAR([日期]))> 、<IIF([日期] Is Null, 0, 1)> 。还有数据列:<IIF([金额] Is Null, 0, 1))> 结果不管是空值还是有数据,出来都是空的。怎么办? |
-- 作者:有点色 -- 发布时间:2017/4/2 11:46:00 -- 直接判断年月咯
iif(year([日期]) = 1899, \'日期为空\', year([日期])) |
-- 作者:海阔天空pl -- 发布时间:2017/4/2 14:42:00 -- 谢谢版主!,这也不失为一个临时办法,因为我们知道日期为空的话出来是1899年。 但是对于金额列,我是这样设置的::<IIF([金额] <> 0, GetDigit([金额],1,"¥") , Null> 。会正常显示,空值为空,数值为数,唯一的不足:当某一行金额确实为“0”时,出来的报表也为空。我想如果显示真实意图:0.00 就完美了。 之前我也用IIF([金额] Is Null,但不管用,所有的列(不管有没有数值)都显示空。
Is Null在报表里真不能用? |
-- 作者:有点色 -- 发布时间:2017/4/2 14:47:00 -- 尝试转换成字符,比如
iif(cstr([金额])="", "空值", "123456") |
-- 作者:海阔天空pl -- 发布时间:2017/4/2 14:57:00 -- 好,谢谢 |
-- 作者:海阔天空pl -- 发布时间:2017/4/5 13:44:00 -- 试过了,不行。数值列空值的初始值为0,所以空值用字符转换出来也是“0” |
-- 作者:海阔天空pl -- 发布时间:2017/4/5 13:56:00 --
[此贴子已经被作者于2017/4/5 13:56:48编辑过]
|
-- 作者:有点色 -- 发布时间:2017/4/5 14:08:00 -- 以下是引用海阔天空pl在2017/4/5 13:44:00的发言:
试过了,不行。数值列空值的初始值为0,所以空值用字符转换出来也是“0”
我测试了一下,没问题。如果有问题,上传实例说明。 |