0

这些年来我一直遇到这个问题!我似乎无法在 Excel 中使用 OR 函数。在我的模型中,单元格 E46 应包含有效的邮政编码或值“无”。不幸的是,我在 E46 中也遇到了“#value”,因此编写了以下公式来捕获此错误并在遇到时返回“None”:

=IF(OR(E46="None",ISERROR(E46)),"None",VLOOKUP(E46, List,2,FALSE)) 

麻烦的是,即使我认为我正在捕获它, 当contains时我仍然会#value被这个公式返回!E46#value

所有的帮助文本都表明我已经正确地编写了公式——我看不出我做错了什么。任何有用的建议都非常感激。

4

1 回答 1

3

当其中可能存在错误时,您不能使用 OR(因为 OR 函数在这种情况下会给出错误 - 从 E46="None" 部分),请尝试首先使用嵌套的 IF 捕获错误,例如

=IF(ISERROR(E46),"None",IF(E46="None",E46,VLOOKUP(E46, List,2,FALSE)))

如果 E46 不在列表中,您仍然会收到错误......

如果您有 Excel 2007 或更高版本,则可以使用 IFERROR 之类的

=IFERROR(IF(E46="None",E46,VLOOKUP(E46, List,2,FALSE)),"None")

于 2013-04-09T12:41:35.230 回答