VLOOKUP函数查找两个工作表的重复数据
第一次用到这个函数还是好几年以前,有个学生家长问我,如果两个工作表里有部分重复的数据,怎么才能找出来?当然这两个工作表的数据都很多,所以人工检索的话工作量太大。我在网上找到了可以用VLOOKUP这个函数。
昨天又有同事问我,我一点也想不起来这个函数是怎么用的了,于是又在网上查了半天,还没全部搞清楚,但是遇到类似的问题应该能解决了。
假设班里有部分同学参加了一次考试,但是考试结果是全校的一张总成绩表,我怎么才能找到班里这些同学的成绩呢?
相同的关键字就是“学号”,所以我只要在“总成绩表”里面找到相同的学号,然后把该学号后面的“成绩”一栏的内容填到“班级成绩表”里面相应的单元格里就可以了。
操作方法是,选择“班级成绩表”里面第一个同学的成绩所在的单元格,使用VLOOKUP函数,相应的参数如下图
这个函数有四项参数,所以让大家有点迷糊。第一项参数是要查找的数据,第二项要查找的范围,第三项是返回的是第几列的数值,最后一项是要不要精确查找。
在我上面的例子里,我要查找的是“班级成绩表”里面第一个同学的学号,其对应的单元格就是A2,这就是第一项参数了;第二项我要在“总成绩表”里面学号和成绩两列中查找,所以参数就是总成绩表!$A$2:$B$11,因为后面牵扯到用填充柄,所以我用了绝对单元格地址;刚才查找的两列里面,我要返回的是第二列的值,所以第三个参数是2;最后一项参数我没搞明白,我明明是要精确查找的,应该是填TURE,但是总是做不对,相反填上0或者FALSE就能做出来。
总之,当前这个单元格填充的函数就是“=VLOOKUP(A2,总成绩表!$A$2:$B$11,2,0)”。填充之后就会自动算出这个同学的成绩了,其他同学用填充柄自动算出来,如果没有参加考试的同学也就是没有找到的,返回的数值就是
#N/A。
如果是查找两个工作表中重复的数据的话,就可以在总的工作表里面多弄一列全都填上个1什么的,完了之后在后面的工作表里面使用vlookup这个函数让重复的数据都返回这个1,之后再用返回1的这列筛选或者排序,就可以知道是哪些数据重复了,该删除就删除,需要其他操作也能做了。