【发布时间】:2016-10-08 08:06:02
【问题描述】:
我的公式不起作用。
=IF(OR(AC358="",ISERROR(AC358), AC358=0),VLOOKUP(M358,FCal,3,TRUE),VLOOKUP(AC358,FCal,3,TRUE)
列 AC 中有一个 vlookup,它将返回一个实际值、0 或错误 #N/A。
当 AC(vlookup)返回 #N/A 错误时,IF 语句以其当前格式失败。
但是,当我要么时,IF 语句就起作用了
将实数值或零硬编码到 AC,或
如果我只用一个条件替换 OR Criteria
ISERROR(AC358)
所以我知道ISERROR 可以自己工作,但它不能在 OR 语句中工作。
【问题讨论】:
-
FCat命名范围内的值是升序排列的吗?
-
是的,FCal 的嵌套 vlookup 工作正常。似乎是 OR 语句中的 ISERROR 问题
-
作为更新,我通过将 AC 中的 vlookup 嵌套到 If(ISERROR(vlookup...),0,vlookup(...)) 中来解决问题。这样,AC 要么返回一个成功的值,要么返回 0,然后我的以下 IF OR 对它起作用。不回答原因,但至少给我一个结果。
标签: excel error-handling excel-formula