求Excel中提取B列未在A列出现内容的正确公式

问题描述
我有三列数据,A列和B列为数据源,C列用于输出结果。想要提取B列中未在A列出现的内容,在C1单元格使用了以下公式:
=filter(B1:B,countif(B1:B,A1:A)=0)
但得到错误结果,例如不应提取出'd'、'h'或'k'。请问正确的公式是什么?
正确公式及说明
你的公式逻辑颠倒了,COUNTIF(B1:B,A1:A)是统计A列值在B列的出现次数,而非B列值在A列的出现次数。正确公式如下:
基础版(保留B列重复值)
=FILTER(B1:B,COUNTIF(A1:A,B1:B)=0)
去重版(若B列有重复值,仅保留唯一结果)
=UNIQUE(FILTER(B1:B,COUNTIF(A1:A,B1:B)=0))
说明:COUNTIF(A1:A,B1:B)会逐个校验B列的每个值在A列中的出现次数,当次数为0时,代表该值未在A列出现,FILTER函数会将这些符合条件的值提取到C列。
内容的提问来源于stack exchange,提问作者andio
相关产品推荐
相关产品推荐

