【问题标题】:How to write formula to compare values in two columns in excel?如何编写公式来比较excel中两列中的值?
【发布时间】:2017-04-07 13:54:56
【问题描述】:

A 列具有电子邮件域值(例如:yahoo.com),B 列具有描述值(例如:雅虎用户)。所以我需要比较它是否匹配的值。如果 A 有 gmail.com 而 B 有 Yahoo 用户,则结果应为“假”。有人可以帮助将公式放在excel上。

【问题讨论】:

  • 显示一些具有预期结果的测试数据,以及到目前为止您尝试过的任何结果。
  • 总是说“[电子邮件服务]用户”吗?如果您尝试将一个单元格中的 any word 与另一个单元格中的 any word 进行匹配,这会有点棘手。正如@ManishChristian 所说,我们可以看到一些示例数据吗?你试过什么了?到目前为止,您收到的答案将不起作用,除非其中一个只是 gmail 并且您正试图在 gmail.com 中找到它。

标签: excel excel-formula compare


【解决方案1】:

如果您将 B 列中的每个单元格与 A 列中相应的单元格进行比较,请尝试此操作

=COUNTIF(B2,"*"&A2&"*")>0

【讨论】:

  • 我认为这不适用于 OP 的要求。如果A2yahoo.com 并且B2yahoo user,则返回FALSE。 (如果将两者颠倒,则相同)
  • 这是我在描述中读到的——“所以我需要比较值是否匹配。如果 A 有 gmail.com 而 B 有 Yahoo 用户,则结果应该是“假”。 "
  • 啊,我读到说一列有yahoo.com,另一列有yahoo user。如果一个是gmail.com,另一个是Yahoo user,它会正确返回false,但是(除非我只是遗漏了什么),如果一个是yahoo.com,另一个是yahoo user,公式仍然返回false。
  • 假设 A2=yahoo.com 和 B2=abc@yahoo.com,公式将返回 True。不是吗?
  • 是的,没错。我想我只是不知道 OP 实际上是如何拥有数据的,所以将其视为yahoo user。但我认为你是对的,它将是一个电子邮件地址。
【解决方案2】:

假设条目值类似于 Yahoo User 或 yahoo.com,其中域名以第一个字符开头并且可以由 .(空格字符)分隔,这是我的解决方案。

Column A    Column B
Yahoo.com   Gmail user
Gmail User  yahoo user
gamil.com   yahoo.com


在C1中输入这个公式

=LEFT(B2,MIN(IFERROR(SEARCH(".",B2),9999999),IFERROR(SEARCH(" ",B2),9999999))-1) = LEFT(A2,MIN(IFERROR(SEARCH(".",A2),9999999),IFERROR(SEARCH


这里有一个更清晰的快照。



这似乎是一个复杂的公式,但它非常简单。该公式从左侧提取域名,然后进行匹配以查看它们是否相同。如果解决了您的问题,请标记为答案。

【讨论】:

    【解决方案3】:

    这是另一种方法:

    可以使用以下公式将字符串搜索到单元格中:

    =ISNUMBER(SEARCH(substring,text))

    'substring' 和 'text' 都可以是单元格或文本。

    来源:https://exceljet.net/formula/cell-contains-specific-text

    【讨论】:

      【解决方案4】:

      如果您在 A1 中有 yahoo.com,在 B1 中有 abc@yahoo.com,则答案会简单得多,

      =IF(ISERROR(FIND(A1,B1)),FALSE,TRUE))
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多