如何在Google Sheets中从SetB移除SetA值生成专属SetC?
从Google Sheets的SetB中筛选未出现在SetA的值
核心解决方案公式
直接在空白列(比如C2单元格)输入以下公式,就能得到仅包含SetB中未出现在SetA里的“不合格商品编码”列表:
=FILTER(B2:B, ISNA(MATCH(B2:B, A2:A, 0)))
如果SetB本身有重复值,想要最终结果仅保留唯一的不合格编码,可以用:
=UNIQUE(FILTER(B2:B, ISNA(MATCH(B2:B, A2:A, 0))))
为什么你之前的尝试失败
你用的=UNIQUE(A2:B54341)逻辑不对:UNIQUE函数的作用是返回指定区域内不重复的行或值,它不会帮你对比两列的差集。所以这个公式只会把A、B两列里重复的行去掉,完全达不到你要的“从SetB中移除所有在SetA出现过的值”的效果。
公式逻辑拆解
MATCH(B2:B, A2:A, 0):遍历SetB的每个值,检查它是否存在于SetA中。找到匹配值时返回对应的行号,找不到则返回#N/AISNA(...):将#N/A转换为TRUE,匹配成功的结果转换为FALSEFILTER(B2:B, ...):只保留SetB中对应结果为TRUE的值,也就是那些在SetA中不存在的不合格编码
内容的提问来源于stack exchange,提问作者Kyle Maxwell
相关产品推荐
相关产品推荐

