Excel:看,如果一个人已经在列表中

时间:2017-11-06 12:44:29

标签: excel excel-formula

假设我有一个姓名和姓氏列表,我希望能够测试名单/姓氏组合是否已经在列表中。我想过使用MATCH,但我认为这只能做一个值。

示例:

  | A    | B       | C | D   | E    | F          |
1 | Name | Surname |   | Doe | John | is in list |
2 | Doe  | John    |   |     |      |            |
3 | Grey | Dorian  |   |     |      |            |
… | …    | …       |   |     |      |            |

A2:B100是数据,D1:E1是我的输入,而F1应该包含一些函数,如果{{1}中的名称/姓氏组合,则输出'在列表中' }在我的数据D1:E1中的某处找到,否则'不在列表中'。关于如何做的任何想法?

编辑:我的问题与可能的重复略有不同,因为我不是在问匹配的地方,我只是问是否匹配。

3 个答案:

答案 0 :(得分:4)

您可以使用COUNTIFS

=COUNTIFS($A$1:$A$10, D1, $B$1:$B$10, E1)

[返回匹配的大于0的数字]

考虑到你的姓氏和名字可以互换(即一个D与姓名匹配,E对姓如上,然后是第二个,其中一个,你可能必须至少使用其中两个) D与姓氏匹配,E与名称匹配),最后将所有内容包装在IF中以显示结果。

答案 1 :(得分:2)

这也有效:

=SUMPRODUCT(--(A2:A100&B2:B100=D1&E1))

您可以将其包装在IF语句中,如下所示:

=IF(SUMPRODUCT(--(A2:A100&B2:B100=D1&E1)),"is in list","not in list")

更严格的版本(根据您的评论)

=SUMPRODUCT((A2:A100=D1)*(B2:B100=E1))

答案 2 :(得分:0)

考虑以下

+---+--------+-----------+---------------+
|   |   A    |     B     |       C       |
+---+--------+-----------+---------------+
| 1 |  Name  |  Surname  | Concatenation |
| 2 |  Doe   |  John     | DoeJohn       |
| 3 |  Grey  |  Dorian   | GreyDorian    |
+---+--------+-----------+---------------+

其中,单元格C2与=TRIM(A2)&TRIM(B2)

类似

现在您只需使用以下公式来捕获名称/姓氏是否在列表中(例如,您可以将其写入F2单元格):

=IF(ISERROR(VLOOKUP(TRIM(D2)&TRIM(E2),C:C,1,0)),"is NOT in the list","is in the list")

在D栏中您有姓名,在E栏中您有您要找的人的姓氏。