【发布时间】:2015-07-31 21:34:11
【问题描述】:
当我检查值是否大于 0 时,我不断在使用查询/数据库字段的计算填充的文本框上收到 #Error。
所以我得到了以下子表单:
在这个子表单中,用户插入他的产品,在前一个填充的行之后,子表单总是生成第二个(空的)。
插入的产品正在报告中显示:
如您所见,“空”行会产生错误。我认为这是因为它给出错误的行是一个计算字段。
我想修复它,对其中一个计算字段进行 if 大于 0 检查。为了使它更清楚, oppervlakte = area 通过乘以 width * height * product count 来计算它 - 所有这些字段在空行上都是 0(或 NULL?)。
这是我尝试在#error 字段上执行的操作:
=IIf([BreedteCoating]>0;[BreedteCoating]*[HoogteCoating]*[AantalEenheden]/1000000;"")
因此,如果宽度 (Breedte) 大于 0,则计算该字段,否则将其留空。这似乎不起作用。
如果值为 0 或 NULL,我如何使这个计算字段工作(没有 #Error)有什么线索吗?
【问题讨论】:
-
试试 nz([BreedteCoating],0) > 0;....
-
这似乎不起作用。内联 NZ 根本不接受 NZ 函数(可以移动到文本框属性中的另一行。像这样调整它
=Iif(Nz([BreedteCoating],0) > 0;[BreedteCoating]*[HoogteCoating]*[AantalEenheden]/1000000); "")当我在调整后单击属性时它只是回到旧的 IIF。跨度> -
NZ 如果参数为空,则返回一个定义的值。所以你的 if 条件看起来像。 IIF(nz(argument,0) > 0;真值;否则值)。在你最后一次尝试中,你有一个额外的“)”,因此它恢复到最后一个工作代码。
-
嗯错过了最后一个
),但即使我删除了),它仍然不接受它
标签: ms-access report calculated-field