Excel表格中数据比对和查找的几种技巧
经常被人问到怎么对两份Excel数据进行比对,提问的往往都很笼统;在工作中,有时候会需要对两份内容相近的数据记录清单进行比对,需求不同,比对的的目标和要求也会有所不同。下面Office办公助手(www.officezhushou.com)的小编根据几个常见的应用环境介绍一下Excel表格中数据比对和查找的技巧。
应用案例一:比对取出两表的交集(相同部分)
Sheet1中包含了一份数据清单A,sheet2中包含了一份数据清单B,要取得两份清单共有的数据记录(交集),也就是要找到两份清单中的相同部分。
方法1:高级筛选
高级筛选是处理重复数据的利器。
选中第一份数据清单所在的数据区域,在功能区上依次单击【数据】——【高级】(2003版本中菜单操作为【数据】——【筛选】——【高级筛选】),出现【高级筛选】对话框。
在对话框中,筛选【方式】可以根据需求选取,例如这里选择“将筛选结果复制到其他位置”;【列表区域】就是之前所选中的第一份数据清单A所在的单元格区域;【条件区域】则选取另外那份清单B所在的单元格区域。如下图所示:
点击【确定】按钮后,就可以直接得到两份清单的交集部分,效果如下图。其中两个清单中虽然都有【西瓜】和【菠萝】,但是由于数量不一致,所以没有作为相同记录被提取出来。
这个操作的原理,就是利用了高级筛选功能对于匹配指定条件的记录进行筛选的功能,把两张表中的任意一张作为条件区域,在另外一张表中就能筛选出与之相匹配的记录,忽略掉其他不相关的记录。
需要注意的是,使用高级筛选的时候务必注意两个清单的标题行要保持一致(高级筛选中作为条件区域的前提),并且在选取【列表区域】和【条件区域】的时候都要把标题行的范围包含在其中。
方法2:公式法
使用公式进行比对的方法有很多,如果是单列数据对比比较常用的函数是COUNTIF函数,如果是多列数据记录对比,SUMPRODUCT函数比较胜任。
在其中一张清单的旁边输入公式:
=SUMPRODUCT((A2&B2=Sheet2!A$2:A$13&Sheet2!B$2:B$13)*1)
并向下复制填充。其中的Sheet2!A$1:A$13和Sheet2!B$2:B$13是另一张清单中的两列数据区域,需要根据实际情况修改。公式结果等于1的记录就是两个清单的交集部分,如下图所示:
应用案例二:取出两表的差异记录
要在某一张表里取出与另一张表的差异记录,就是未在另外那张清单里面出现的部分,其原理和操作都和上面第一种场景的差不多,所不同的只是筛选后所选取的集合正好互补。
方法1:高级筛选
先将两个清单的标题行更改使之保持一致,然后选中第一份数据清单所在的数据区域,在功能区上依次单击【数据】——【高级】,出现【高级筛选】对话框。在对话框中,筛选方式选择“在原有区域显示筛选结果”;【列表区域】和【条件区域】的选取和前面场景1完全相同,如下图所示:
点击【确定】完成筛选,将筛选出来的记录全部选中按【Del】键删除(或做标记),然后点击【清除】按钮(2003版本中为【全部显示】按钮)就可以恢复筛选前的状态得到最终的结果,如下图所示:
方法2:公式法
使用公式的话,方法和场景1完全相同,只是最后需要提取的是公式结果等于0的记录。
应用案例三:取出关键字相同但数据有差异的记录
前面的两份清单中,【西瓜】和【菠萝】的货品名称虽然一致,但在两张表上的数量却不相同,在一些数据核对的场景下,就需要把这样的记录提取出来。
方法1:高级筛选
高级筛选当中可以使用特殊的公式,使得高级筛选的功能更加强大。
第一张清单所在的sheet里面,把D1单元格留空,在D2单元格内输入公式:
=VLOOKUP(A2,Sheet2!$A$2:$B$13,2,0)<>B2
然后在功能区上依次单击【数据】——【高级】,出现【高级筛选】对话框。在对话框中,筛选方式选择“在原有区域显示筛选结果”;【列表区域】选取第一张清单中的完整数据区域,【条件区域】则选取刚刚特别设计过的D1:D2单元格区域,如下图所示:
点击【确定】按钮以后,就可以得到筛选结果,就是第一张中货品名称与第二张表相同但数量却不一致的记录清单,如下图所示:
同样的,照此方法在第二张清单当中操作,也可以在第二张清单中找到其中与第一张清单数据有差异的记录。
这个方法是利用了高级筛选中可以通过自定义公式来添加筛选条件的功能,有关高级筛选中使用公式作为条件区域的用法,可参考本站发布的;另外一篇教程:
Excel中数据库函数和高级筛选条件区域设置方法详解
http://www.officezhushou.com/excel/jiqiao/2924.html
方法2:公式法
使用公式还是可以利用前面用到的SUMPRODUCT函数,在其中一张清单的旁边输入公式:
=SUMPRODUCT((A2=Sheet2!A$2:A$13)*(B2<>Sheet2!B$2:B$13))
并向下复制填充。公式中的包含了两个条件,第一个条件是A列数据相同,第二个条件是B列数据不相同。公式结果等于1的记录就是两个清单中数据有差异的记录,如下图所示。这个例子中也可以使用更为人熟知的VLOOKUP函数来进行匹配查询,但是VLOOKUP只适合单列数据的匹配,如果目标清单中包含了更多字段数据的差异对比,还是SUMPRODUCT函数的扩展性更强一些。
来源:http://www.officezhushou.com/excel/jiqiao/2925.html
Excel表格中数据比对和查找的几种技巧相关推荐
- python比对excel表数据中的差异_Excel表格中数据比对和查找的几种技巧
经常被人问到怎么对两份Excel数据进行比对,提问的往往都很笼统:在工作中,有时候会需要对两份内容相近的数据记录清单进行比对,需求不同,比对的的目标和要求也会有所不同.下面Office办公助手(www ...
- Excel表格中一些你不知道的鼠标双击实用小技巧
Excel表格中一些你不知道的鼠标双击实用小技巧 目录 Excel表格中一些你不知道的鼠标双击实用小技巧 1.鼠标双击自动填充整列公式, 鼠标放在单元格右下角,鼠标指针变成十字时双击鼠标右键,整列汇总 ...
- 把数据导出到Excel表格中的方式
导出数据到Excel表格中,总的来说可以分为两种方式: 1.Java导出(有很多成熟的开源类库可供使用,在此讲述由Apache提供的HSSFWookbook) 2.JSP导出 首先说说JSP导出数 ...
- python 查找excel表格中重复的信息并标出来
Python之PyMuPDF--批量处理一个PDF文件中发票的总金额提取 python 查找excel表格中重复的信息并标出来 python 提取excel表格中指定的关键字 python 批量修改文 ...
- wps表格户主序号_如何在Excel表格中对自动设置编号(wps excel查找)
WPS如何设置产品编码规则 打开一个编好的WPS文档如下: 如果只样的话,文档显的太乱了,条理也不清晰,因此需要文档进行编号,选中文档,鼠标右键,弹出下拉菜单: 选择项目符号和编号,弹出符号和编号对话 ...
- c 语言如何处理表格文件中的数据库,C#程序从Excel表格中读取数据并进行处理
今天做了一个Excel表格数据处理的事情,因为数据量表较大(接近7000条)所以处理起来有点麻烦,于是写了一个程序, 先将程序记下以便将来查找. using System; using System. ...
- excel表格数字显示不全_从word中把身份证号码复制到excel表格中完整显示身份证号码后4位...
如果直接从word中复制内容,在excel表格中进行粘贴处理,gif动画演示如下: 在word中,身份证号显示是完整的,而直接复制到excel表格会显示成E*17,这是科学计数法.双击单元格显示出 ...
- jsp 如何动态给图片赋值_在Excel表格中你知道如何动态引用图片吗?
上期文章为朋友们分享了如何将照片快速批量导入导出到Excel表格中,那么如何根据文字匹配对应的图片你知道吗?这篇文章就和朋友们一起学习一下! 一.根据名称批量导入图片: 上期文章为朋友们分享的批量导入 ...
- vb用数组方式快速导出MSFlexGrid表格数据到Excel表格中
本来从MSFlexGrid或MSHFlexGrid导出数据到Excel中,是一个非常简单的问题,但论坛里还是经常有人问如何导出,有的虽然知道用单元格赋值方式循环导出,但速度太慢,因此写了一个通用的数据 ...
最新文章
- Android实例]------获取sd卡图片显示出来
- python画图简单代码-简单画图 - python代码库 - 云代码
- 0基础入门,如何快速上手Python?
- Java 反射的理解
- 【Docker1】指令,docker-compose,Dockerfile,容器编排工具k8s
- 牛客网【每日一题】4月28日题目精讲 美味菜肴
- mapxtreme java manger web 应用程序牛刀小试
- [转帖]安华高收购博通
- 基于阿里云的MQTT远程控制
- 服务器虚拟化的分类宿主模型,虚拟化分类
- 20172304 蓝墨云实验哈夫曼树
- 前端常用PS技巧总结之将图片上的LOGO(水印)去掉
- linux下exec用法,linux下exec系列(一)
- idea open操作打开文件夹无反应
- 歌评 Mondstadt Starlit 星光下的蒙德-陈致逸
- delphi android 打印机,用delphi控制小票打印机打印图片
- React16、17、18版本新特性
- oracle错误代码大全(超详细)
- 随机取样已死,蓄水池抽样称王
- JAVA多线程信号量Semaphore
热门文章
- 【每日一库】ppcp - 带进度条的拷贝工具
- R语言 如何合并csv文件(批量读取csv文件)
- ViewPager(一屏多页、无限滑动、自动切换)
- 基于Python实现的简易微信系统
- 【jzoj2220】【二分】愤怒的奶牛2(angry)
- PX4平台(V3)+T8S遥控器校准
- 杰理之IIC sclk时钟【篇】
- Spark、Docker、Tensorflow开发者看过来,CCTC 2017报名开启
- matlab之simulink仿真入门
- cocos creator屏幕适配fitHeight / fitWidth,手机端竖屏,pc端浏览器适配,pc分辨率全屏适配,血条跟随的适配