Excel 如果条件在两列中匹配获取值
Excel If Condition matches in two column fetch value
我正在处理 excel 简单查询,我试图根据
获取 Name
- 首先如果
ID
匹配两个表列值
- second 如果
Status
列的值为 Pick
,则从 Name
列中获取值。否则 Do nothing
和 empty
这是我的表格 -
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 中的普通电子表格范围。
- [A11] =Table2[ID.]这会自动复制到A14
- [B11] =Table2[Status] 这会自动将自身复制到 B14
- [C11]
=IF(B11="Pick",IFERROR(VLOOKUP(A11,Table1,2,FALSE),""),"")
请手动复制到C14
结果将如您描述的那样,但不会像您的示例所示那样,因为 ID 1003 与 Nyle 关联,而不是 Leoe。
我正在处理 excel 简单查询,我试图根据
获取Name
- 首先如果
ID
匹配两个表列值 - second 如果
Status
列的值为Pick
,则从Name
列中获取值。否则Do nothing
和empty
这是我的表格 -
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 中的普通电子表格范围。
- [A11] =Table2[ID.]这会自动复制到A14
- [B11] =Table2[Status] 这会自动将自身复制到 B14
- [C11]
=IF(B11="Pick",IFERROR(VLOOKUP(A11,Table1,2,FALSE),""),"")
请手动复制到C14
结果将如您描述的那样,但不会像您的示例所示那样,因为 ID 1003 与 Nyle 关联,而不是 Leoe。