高级查找公式

时间:2018-11-24 22:54:55

标签: excel if-statement vlookup

我需要一个高级查找公式,该公式将搜索一个表中的数据并根据另一表中的条件产生一个值。

Table 1

Table 2

我要实现的目标是:

  1. 如果表1中的J列等于表2中的A列,并且
  2. 表1中的L列等于表2中的D列
  3. 但是表2中的D列为空白,但表2的L列中有值,除了先前表2中指定的值
  4. 表1中的G列等于表2中的B列
  5. 但是表2中的B列为空白,但表1中的G列具有除表2中先前指定的值以外的值
  6. 如果表1中的O列等于表2中的C列
  7. 但是表2中的C列为空白,表2中的O列包含的值不同于表2中先前指定的值。
  8. 最终结果应在表2中的E列。

我使用了这个公式,但是显示值错误

=IF(AND(Trans!J:J=Mapping!A:A),Mapping!E:E),IF(AND(Trans!L:L=Mapping!D:D),Mapping!E:E),IF(AND(Mapping!D:D="",Trans!L:L<>""),Mapping!E:E), IF(AND(Trans!G:G=Mapping!B:B),Mapping!E:E),IF(AND(Mapping!B:B="",Trans!G:G<>""),Mapping!E:E),IF(AND(Trans!O:O=Mapping!C:C),Mapping!E:E),IF(AND(Mapping!C:C="",Trans!O:O<>""),Mapping!E:E)

公式也可以按行搜索。我只想要一些可行的方法!

请帮助。

1 个答案:

答案 0 :(得分:0)

您的公式无能为力,似乎您将所有您认为的逻辑结合在一处,但是它不是excel可以理解的形式。

据我了解,您必须删除空白支票,根据您的数据,它们可能会返回意外的结果,如果它们是一个空白,或者两种情况下的结果都不同,您将不知道原因返回值。 (进行这样的检查是不合逻辑的)

类似这样的逻辑可能会返回多个值,如果有更多的值返回,则必须放置一些公式。

对于该公式,您正在比较一整列和一整列。不建议这样做,建议的方法是将一个值与一系列值进行比较,并且在使用时不需要使用AND()函数

公式中的比较将类似于

=IF(Trans!J3=Mapping!A3:A20,Mapping!E3:E20,"")

这是一个可以返回多个值的数组公式

最后的总结是,首先您必须定义要进行的逻辑,尚不清楚,并且在学习如何应用此类公式然后将其应用到数据上之后还没有考虑所有可能性。