或function总是把我绊倒

这几年来我一直都有这个问题! 我似乎无法得到Excel中的或function工作。 在我的模型中,单元格E46应该包含有效的邮政编码或值“无”。 不幸的是,我还在E46中遇到了一个“#value”,所以写了下面的公式来捕获这个错误,如果遇到了,则返回“None”

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

麻烦的是,当E46包含#value时,我还是得到了这个公式返回的#value ,尽pipe我觉得我正在陷害它!

所有的帮助文本都表明我已经正确地编写了这个公式 – 我看不出我做错了什么。 任何有用的build议感激地收到。

当那里可能有错误时,你不能使用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")