查找表 1,如果未找到匹配项,则查找表 2

查找表 1,如果未找到匹配项,则查找表 2

如果在另一个表中找不到正确的匹配项,则我无法创建公式来从一个表中查找结果。

我希望用户输入以下信息:这是生产工厂吗?是/否邮政编码:XXXXX 我希望根据输入从表 1 或表 2 返回结果。

A - 如果答案是肯定的,并且邮政编码在表 2 中,则返回表 2 中相应单元格的结果。

B - 如果答案是肯定的,并且邮政编码不在表 2 中,则返回表 1 中相应单元格的结果。

C - 如果答案为否,则返回表 1 中相应单元格的结果。

使用这个公式:

=IF(H1="否",(VLOOKUP(H2,G6:I8,3,TRUE)),IF(H1="是",(VLOOKUP(H2,F12:I14,3,TRUE))))

我可以解决场景 A 和 C,但显然不能解决场景 B。我尝试使用上述公式的变体:and、vlookup、match、iferror、isna。这些方法要么不起作用,要么只返回部分场景的结果。

如果我使用这个: =IF(AND(H1="yes",H2<>(F12:F14)),VLOOKUP(H2,G6:I8,3),"error")))

我可以解析 B。但是,如果我将其与上面的代码结合起来,它就不再解析 B,而只是解析 A 和 C:

=IF(H1="否",(VLOOKUP(H2,G6:I8,3,TRUE)),IF(H1="是",(VLOOKUP(H2,F12:I14,3,TRUE)),IF(AND(H1="是",H2<>(F12:F14)),VLOOKUP(H2,G6:I8,3),"错误")))

有什么建议么?

感谢您的建议!

我试过了,但还不够。我想我需要更好地解释一下。

我已附加一张屏幕截图(目前我还不能嵌入它们):

表格截图

我可以正确得到第一和第三个答案(如图所示),但是第二个答案无法正确解决。

这个公式给出了这些结果:

=IF(C1="no",(VLOOKUP(C2,B6:D8,3,TRUE)),IF(C1="yes",VLOOKUP(C2,A12:D14,3,TRUE)),IF(AND(C1="yes",C2<>(A12:A14)),VLOOKUP(C2,B6:D8,3),"error")))

感谢大家的意见,这个问题终于解决了!

答案1

多级查找解决了该问题:

情况 1:

  • 是的,邮政编码在表 1 中。

在此处输入图片描述


情况 2:

  • 是的,邮政编码见表 2。

在此处输入图片描述


情况 3:

  • 在表 2 中找到了编号和邮政编码。

在此处输入图片描述

注意:

  • 如果No & Zip code not found in Table 2则公式返回Blank
  • 如果Yes or No & Zip code not found in either tables那么公式也返回Blank.
  • Blank也可以用合适的文本替换。

单元格中的公式L7

=IFERROR(IF($I$7="Yes",IFERROR(VLOOKUP($J$7,$I$3:$J$5,2,0),IFERROR(VLOOKUP($J$7,$I$10:$J$12,2,0),VLOOKUP($J$7,$I$10:$J$12,2,0))),VLOOKUP($J$7,$I$10:$J$12,2,0)),"")

根据需要调整公式中的单元格引用。

答案2

公式

=IF(OR(Production_Plant="No", ISNA(VLOOKUP(ZIP_Code, Table2, 2, 0))),
    VLOOKUP(ZIP_Code,Table1,2,0), VLOOKUP(ZIP_Code,Table2,2,0))

在哪里

  • Production_Plant持有“是”或“否”
  • ZIP_Code保存要查询的邮政编码
  • Table1Table2两个表

怎么运行的

我们有一个IF()语句。我们查看Table1if任何一个

  1. Production_Plant没有”
  2. 无法在 中找到邮政编码Table2。这是通过ISNA()@gns100 引用的函数实现的。

否则,它会Table2

截屏

两个表中的 VLOOKUP

我用了公式Chop生成此公式和屏幕截图。(完整披露:我编写了 FormulaChop)

相关内容