在 Excel 中测试两列中某一行的值是否存在于其他两列中的任意一行中

在 Excel 中测试两列中某一行的值是否存在于其他两列中的任意一行中

我有 5 列,我需要检查某一行的 A 和 B 的值是否在 C 和 D 中的任意行中以相同的顺序出现,然后在 E 中输出结果。结果将是真或假,取决于该行的 A&B 内容是否在任何行上与 C&D 匹配:

╔════════╦═════════╦════════╦═════════╦═══════╗
║   A    ║    B    ║   C    ║    D    ║   E   ║
╠════════╬═════════╬════════╬═════════╬═══════╣
║ red    ║ donkey  ║ black  ║ chicken ║ FALSE ║
║ black  ║ chicken ║ yellow ║ donkey  ║ TRUE  ║  <===
║ yellow ║ fish    ║ red    ║ fish    ║ FALSE ║
╚════════╩═════════╩════════╩═════════╩═══════╝

如您所见:黑色/鸡是唯一的真实值,因为它在 C/D 中连续存在。

答案1

您可以SUMPRODUCT为此使用例如函数:

=SUMPRODUCT((A1=C:C)*(B1=D:D))>0

在此处输入图片描述

答案2

我明白顺序很重要。(黑鸡不应该与黑鸡匹配)。在这种情况下,您可以创建 2 个新列,其中包含 AB 和 CD 的组合数据。[公式为: =A1&B1,只需用“&”分隔单元格即可。]

因此,你的表格看起来就像

    E          F
reddonkey      blackchicken
blackchicken   yellowdonkey

等等。然后你使用公式

=ISNUMBER(MATCH([cell column F],[entire column E],TRUE)

该公式仅检查给定列表中的特定单元格是否有匹配项。

相关内容