【问题标题】:how do I find the values that are in one column but not in the other如何找到在一列中但不在另一列中的值
【发布时间】:2014-06-27 00:56:23
【问题描述】:

我在 Google 电子表格中有两列 A 和 B。

我想查找 A 列中但 B 列中没有的所有数字。我该怎么做?

B 可能与 A 列中的数字相同。

所以如果 A 列有数字:1、2、3 和 B 有数字 3, 4,5

我想获取 A 中但 B 中没有的所有数字: 1、2

我如何使用谷歌电子表格做到这一点?

【问题讨论】:

    标签: google-sheets


    【解决方案1】:

    使用MATCH 确定A 列中的每一行是否出现在B 列中,然后将A 列过滤为仅MATCH 返回#N/A 的行(即,在A 列中找不到该行的值在 B 列):

    =FILTER(A:A, ISNA(MATCH(A:A, B:B, 0)))
    

    如果 A 包含重复项,并且您希望将结果序列减少为唯一值,只需将整个内容包装在 UNIQUE 中:

    =UNIQUE(FILTER(A:A, ISNA(MATCH(A:A, B:B, 0))))
    

    【讨论】:

    • 这在当时可能有效,现在我需要使用 ISNA 而不是 ISERROR。
    • ISNA 更具体,因此可能是更好的选择(将更新),但ISERROR 在 Google 表格中仍然有效。但是,ISERR 将不起作用,因为它会在 #N/A 上返回 FALSE - 也许这就是您尝试过的?
    • 完美运行!谢谢:)
    • @Kate 太棒了!这适用于AB 的整行,但是如何将结果放入新列C
    • 我尝试了这个线程中给出的解决方案,但没有成功。然后我遇到了一个带有较小 {} 调整的替代方案,并且有效。例如:=UNIQUE(FILTER({A:A}, ISNA(MATCH(A:A, B:B, 0)))) 这是我从中挑选的解决方案的参考:support.google.com/docs/thread/10882571/…
    【解决方案2】:

    根据 Kate aswer,我不仅能够否定一列,而且能够否定几列。

    凯特解决方案如下:

    =FILTER(A:A, ISNA(MATCH(A:A, B:B, 0)))

    “B:B”定义了要返回的内容是 A:A 减去 B:B。

    但如果你想返回 A:A、酒糟 B:B、少 C:C、少 D:D 等等? 只需在 {} 中插入 B:B、C:C 和 D:D,然后:

    =FILTER(A:A; ISNA(MATCH(A:A; {B:B;C:C;D:D}; 0)))
    

    我希望这可以帮助像我这样的其他人。我正在寻找一种解决方案,它不会带来某些列中存在的内容。

    谢谢!

    【讨论】:

      【解决方案3】:

      在 C 列中,使用从 A 到 B 的 vlookup。例如

      C1 = vlookup(A1,B:B,1)
      C2 = vlookup(A2,B:B,1)
      ...
      

      如果B不包含A,则显示#N/A

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-09-05
        • 1970-01-01
        • 1970-01-01
        • 2018-04-21
        • 1970-01-01
        • 1970-01-01
        • 2021-02-03
        相关资源
        最近更新 更多