Excel 如果条件在两列中匹配获取值

Excel If Condition matches in two column fetch value

我正在处理 excel 简单查询,我试图根据

获取 Name
  1. 首先如果 ID 匹配两个表列值
  2. second 如果 Status 列的值为 Pick,则从 Name 列中获取值。否则 Do nothingempty

这是我的表格 -

Table 2

ID.    Name
1001   Chris
1002   Leoe
1003   Nyle

Table 1

ID.    Status
1001   Pick
1002    No
1003   Pick
1004   Pick

预期结果

ID.    Status.  Name
1001   Pick     Chris
1002    No     
1003   Pick     Nyle
1004   Pick

我正在尝试这个查询,但这里有问题 -

=IF(ISNUMBER(MATCH([ID];Table2[ID];0));IF([Status]="Pick";Table2[Name];""))

但是我收到了这个错误error

谁能帮我解决这个问题!

您需要使用@符号来引用直接table的单行。您还应该再次使用匹配结果来引用第二个 table:

中的单行

=IF(ISNUMBER(MATCH([@ID]; Table2[ID]; 0)); IF([@Status]="Pick"; INDEX(Table2[Name]; MATCH([@ID]; Table2[ID]; 0)); ""); "")

假设您的 Table1 和 Table2 是 Excel table,您可以使用以下公式将结果 table 构建为 A11:C14 中的普通电子表格范围。

  1. [A11] =Table2[ID.]这会自动复制到A14
  2. [B11] =Table2[Status] 这会自动将自身复制到 B14
  3. [C11]=IF(B11="Pick",IFERROR(VLOOKUP(A11,Table1,2,FALSE),""),"")请手动复制到C14

结果将如您描述的那样,但不会像您的示例所示那样,因为 ID 1003 与 Nyle 关联,而不是 Leoe