工作中,我们经常需要对两列数据进行对比,找出其中的相同点和不同点。传统的逐项比对方式既耗时又容易出错。

今天,我们将为大家介绍一个高效的方法:

一、提取相同数据

输入FILTER函数:

=FILTER(A2:A19,COUNTIF(B2:B19,A2:A19))

FILTER(显示筛选结果,筛选条件)

显示筛选结果是A列的姓名:A2:A19

筛选条件:COUNTIF(B2:B19,A2:A19)),采用Countif函数得到TRUE的结果。

excel函数FILTER+COUNTIF组合对比2列数据,轻松提取相同与不同项-趣帮office教程网

拆分一下这个公式:

(1)=COUNTIF(B2:B19,A2:A19)

第一个参数是计数区域:B2:B19

第二个参数是条件区域:A2:A19

通过COUNTIF函数,我们可以得知A列中的数据是否包含在B列中。

如果包含,则返回1,否则返回0。

excel函数FILTER+COUNTIF组合对比2列数据,轻松提取相同与不同项-趣帮office教程网

(2)在外面嵌套FILTER函数:

=FILTER(A2:A19,COUNTIF(B2:B19,A2:A19))

第一参数是要显示A列姓名,

第二参数是筛选条件:countif函数的结果1作为条件,因为filter函数只会筛选数字为“1”或显示为“TRUE”的记录。

此时,Excel将自动提取出A列和B列中相同的数据。

excel函数FILTER+COUNTIF组合对比2列数据,轻松提取相同与不同项-趣帮office教程网

二、提取不同数据

(1)A列中有B列中没有

只要在上面的公式FILTER的第二个参数前增加一个NOT函数。

输入公式:

=FILTER(A2:A19,NOT(COUNTIF(B2:B19,A2:A19)))

excel函数FILTER+COUNTIF组合对比2列数据,轻松提取相同与不同项-趣帮office教程网

注意:COUNTIF(B2:B19,A2:A19)前面加上NOT函数,使得0变成TRUE。

NOT(COUNTIF(B2:B19,A2:A19))就可以当FILTER函数的第二参数。

FILTER函数筛选条件:只认“1”或“TRUE"

excel函数FILTER+COUNTIF组合对比2列数据,轻松提取相同与不同项-趣帮office教程网

(2)A列中没有B列中有

只需要把A列有B列没有的公式更改一下:

输入=FILTER(B2:B19,NOT(COUNTIF(B2:B19,A2:A19)))

把FILTER函数A2:A19的第一参数更改成B2:B19这个区域就可以了。

excel函数FILTER+COUNTIF组合对比2列数据,轻松提取相同与不同项-趣帮office教程网

三、总结

通过这种方法,我们可以轻松、准确地对比两列数据,并提取出它们的相同和不同点。

希望这个小技巧能对你的工作有所帮助。