打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
从两列中提取相同或不相同数据的数组公式

从两列中提取相同或不相同数据的数组公式

来源:excel格子社区

有时在Excel中需要对两列进行比较,并提取两列中相同或不相同的数据,例如A列和B列分别包含一些人员名单,现在需要找出两列中都存在的姓名(AB有)、A列中存在B列中不存在的姓名(AB无)及A列中不存在B列中存在的姓名(AB有),并分别放置到DEF列中。

    

    假如两列名单分别在A2:A20B2:B15区域中,用下面的两组数组公式即可获取相应的名单,每个公式输入完毕后,需按Ctrl+Shift+Enter结束。

    1.获取A列和B列中相同的数据,在D2中输入数组公式:

   =INDEX($B$2:$B$15,MATCH(1,COUNTIF(D$1:D1,$B$2:$B$15)+IF(COUNTIF($A$2:$A$20,$B$2:$B$15),1,0),0))

    或:

   =INDEX(A:A,SMALL(IF(COUNTIF($B$2:$B$15,$A$2:$A$20),ROW($A$2:$A$20),4^8),ROW(A1)))&""

    2.获取AB无的数据,在E2中输入数组公式:

   =INDEX($A$2:$A$20, MATCH(0, COUNTIF($B$2:$B$15, $A$2:$A$20)+COUNTIF(E$1:E1, $A$2:$A$20), 0))

    或:

   =INDEX(A:A,SMALL(IF(COUNTIF($B$2:$B$15,$A$2:$A$20),4^8,ROW($A$2:$A$20)),ROW(A1)))&""

    3.获取AB有的数据,在F2中输入数组公式:

   =INDEX($B$2:$B$15, MATCH(0, COUNTIF($A$2:$A$20, $B$2:$B$15)+COUNTIF(F$1:F1, $B$2:$B$15), 0))

    或:

   =INDEX(B:B,SMALL(IF(COUNTIF($A$2:$A$20,$B$2:$B$15),4^8,ROW($B$2:$B$15)),ROW(A1)))&""

    上述公式输入完毕后,分别拖动填充柄向下填充,第一组公式直到出现“#N/A”为止,第二组公式直到出现空值为止。

 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Excel189 | 在姓名与成绩中剔除指定姓名与成绩(进阶篇)
去除重复项(11种解法)
设置数据有效性时,来源是包含有重复值的数组,能在来源框直接写函数解决这个重复的问题吗?
如何不计重复返回一组数中的次大、次小值
看懂了这两个核心查询套路,才发现VLOOKUP就是个笨蛋
手把手教你,学会提取不重复值
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服