两列数据各有重复,如何筛选唯一对应关系?
点击上方
蓝色
文字 关注我们吧!
送人玫瑰,手有余香,请将文章分享给更多朋友
动手操作是熟练掌握EXCEL的最快捷途径!
特别感谢网友小小和NY提供的资源和解题思路!
前两天网友问了这样一个问题:
A、B两类不同的数据,A列是人员名单,B列是员工编号。如何通过公式判断A列和B列是否是一对一关系。如有一对多,或者多对多,显示错误值。
在单元格D2中输入“=IF(SUM(IF($A$2:$A$6=A2,$B$2:$B$6,0))/B2=COUNTIF($B$2:$B$6,B2),"一对一","非一对一")”,CTRL+SHIFT+ENTER回车,并向下拖曳即可。
思路:
利用IF函数判断姓名列中有哪些和当前单元格姓名相符,相符的返回对应的员工号,不符的返回0
SUM(IF($A$2:$A$6=A2,$B$2:$B$6,0))这部分将所有相符的员工号相加。此步是本题的精华之一。由于员工号是数值类型的,因此可以相加
SUM(IF($A$2:$A$6=A2,$B$2:$B$6,0))/B2部分是本题的另一个精华,含义是和当前员工对应的员工号出现了几次
COUNTIF($B$2:$B$6,B2)部分计算当前员工号一共出现了几次
上述两项若相等,则是一一对应,否则就是非一一对应
这里有一个小问题需要特别注意:
本例中员工号是数值类型的。如果员工号是文本类型的,上述思路就不适用了。
文章推荐理由:
一般情况筛选重复项可用函数COUNTIF,或者公式组合INDEX+SMALL+IF+MATCH来实现。此例为我们提供了一种新的思路!
-END-
长按下方二维码关注EXCEL应用之家
面对EXCEL操作问题时不再迷茫无助
推荐阅读:
根据等级加权计算总分--SUMPRODUCT和LOOKUP函数的组合
戳原文,更有料!免费模板文档!
赞 (0)