VLOOKUP不返回值

我在Excel 2010中有一个包含多个工作表的工作簿 . 我正在尝试使用VLOOKUP将数据从一个工作表复制到另一个工作表 . 并非所有原始数据都存储在一张纸上 . 存储在第二张表中的那些标记了#N / A错误 . 我尝试添加IF ISERROR系列,但现在它只是默认为空白 . 当我翻转它时,它告诉我该公式包含错误 .

原版的:

=IF(ISERROR(VLOOKUP(E3,$B$3:$C$11,2,FALSE)),"",VLOOKUP(AT7, 'GROUP1'!A:O,10,FALSE))

翻转:

=VLOOKUP(AT7,'BPT MNDM'!A:O,10,FALSE)), IF(ISERROR(VLOOKUP(E3,$B$3:$C$11,2,FALSE)),"")

我该怎么做才能使它在第一个表/列中找不到值时将它留空而不留下所有空白?此外,有没有办法检查第二个表,如果查找没有找到值,或搜索第二列?例如,如果它在Group1中找到值但Col10为空,则复制Col11,或者如果在Group1中找不到它,则检查Group2并执行相同操作 . 或者,有没有办法在VBA中执行此操作?

任何帮助将不胜感激 .

回答(1)

2 years ago

我认为你所需要的基本上是"try a VLOOKUP referencing sheet1, but if it fails, try again sheet2, but if that fails try on sheet3...."

你会想要使用= IFERROR(value,value_if_error)

如果它不是错误,则返回“value”,否则返回value_if_error .

所以我认为你需要类似的东西:IFERROR(VLOOKUP(E3,$ B $ 3:$ C $ 11,2,FALSE),VLOOKUP(AT7,GROUP1!A:O,10,FALSE))