您的位置:首页 > 其它

excel中对比两个sheet,找出匹配不上的

2013-09-30 11:13 239 查看
问题描述:数据的特点是,在同一个excel文件中存在两个sheet,他们的数据结构是一样的,其中一个中的数据是另一个的子集,目的是要找出他们的不同,即找出在那张大些的sheet中存在,但在那张小些的sheet中不存在的记录(行),并把它保存到第三个sheet或某个sheet的其他空白地方

方法1:使用excel中的函数match来进行匹配,其中参数需要使用绝对引用。匹配完成后再用if来筛选。原理如下:把sheet1中的每一个值在sheet2中查找一遍,lookup_value设为sheet1中待查找的一个单元格,lookup_array设为sheet2中包含有sheet1的重复数据的区域(一定为绝对引用才行),match_type设为0.在sheet1中的一个单元格写好后使用自动填充.再采用if语句进行判断match成功与否,而赋予单元格不同的值.再使用筛选,选出match failed的记录

函数:match(look_value,look_array,[match_type])
if(logic_test,[value_if_true],[value_if_false]) #此处的logic_test可以使用相关子函数来判断,如是否为#N/A --- ISNA(A1)





=MATCH(sheet1!A:A,sheet2!A:A,0) #得到的结果表示对应的行号
=IF(ISNA(D2),"不存在","存在")
match修改后的数据对比
158存在
96存在
96存在
方法2:写perl脚本来完成数据匹配与表格填充。仅为练手,待补充。此问题使用方法1足矣。

本文出自 “奔跑的羚羊” 博客,请务必保留此出处http://heshw.blog.51cto.com/5891747/1303722
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: