Excel 在两个工作表上进行VLOOKUP(带IF?)

Excel 在两个工作表上进行VLOOKUP(带IF?),excel,excel-formula,Excel,Excel Formula,在单元格上执行一个简单的VLOOKUP,从另一个工作表返回日期,如下所示 =VLOOKUP(A46,'ECA AW12'!B92:AO133,15,0) 基本上,查找单元格A46,并对照表ECA AW12上的B92:AO133进行检查,如果为真,则返回表中同一行单元格15的值作为匹配项 但是…如果工作表上没有A46怎么办?它可以出现在两个电子表格之一中 我假设从逻辑上讲,需要一个函数来搜索第一个电子表格中的值,如果没有,则在第二张表格上执行VLOOKUP 非常感谢您的帮助,因此您正在寻找与IF结

在单元格上执行一个简单的
VLOOKUP
,从另一个工作表返回日期,如下所示

=VLOOKUP(A46,'ECA AW12'!B92:AO133,15,0)

基本上,查找单元格A46,并对照表ECA AW12上的
B92:AO133
进行检查,如果为真,则返回表中同一行单元格15的值作为匹配项

但是…如果工作表上没有A46怎么办?它可以出现在两个电子表格之一中

我假设从逻辑上讲,需要一个函数来搜索第一个电子表格中的值,如果没有,则在第二张表格上执行
VLOOKUP


非常感谢您的帮助,

因此您正在寻找与
IF
结合使用的
iError
功能

看起来像这样

=IF(ISERROR(VLOOKUP(A46,'ECA AW12'!B92:AO133,15, 0)),        
    VLOOKUP(A46,'OtherWorksheet'!B92:AO133,15, 0),
    VLOOKUP(A46,'ECA AW12'!B92:AO133,15, 0),

您可以首先测试A46是否确实存在于,
“ECA AW12”中!B92:AO133
,然后决定是在此页面上搜索,还是退回到第二个页面。 最简单的方法是使用
MATCH
函数查找原始数组中的值,并使用
ISERROR
测试是否确实找到了该值。如果
MATCH
返回错误,则另一页中的
VLOOKUP
,如果不是,则原始页中的
VLOOKUP

=IF(ISERROR(MATCH(A46,`'ECA AW12'!B92:AO133`,0)),VLOOKUP(A46,'OTHER SHEET'!B92:AO133,15, 0),VLOOKUP(A46,'ECA AW12'!B92:AO133,15, 0))

+1-出于某种原因,你的答案直到几秒钟前才弹出:)@RocketDonkey是的,有困惑,有错误-现在没事了-谢谢;)感谢您的快速回复,这似乎在逻辑上是正确的,但是#N/A正在返回-对此不确定。@Danielshillock,因为它在逻辑上不太正确-现在更正。你看,我用错误的方式处理了真/假语句-所以IFERROR->DO ERROR-现在没问题了。IFERROR可能更干净(除非它是错误,否则首先执行,然后返回到第二个)=iferror(VLOOKUP(A46,“其他工作表”!B92:AO133,15,0),VLOOKUP(A46,“ECA AW12”!B92:AO133,15,0))