大家好,这一章我们来讲讲如何对比两表差异或者两列数据的差异.
这些方法既常规又简单,希望能够对大家有所帮助.
关于表格的对比列数据的对比,其实看过之前的视频,大家应该都知道,
这一章我会把所有表格需要对比的情况放在一起,
算是一个总结,大家以后遇到这种情况可以直接再次查阅这一篇文章.
特别是后面的交集类型的两表对比,一定要看,你一定遇到过这些问题!
1
同一表两列对比
如下图,同一个表格,两列对比非常简单,
选择两列数据,CTRL+\选定差异位置,
涂上颜色标记.
或者如下图,选择两列数据,
选择条件格式,重复值标记中,选择唯一,标记差异位置.
2
两个表格对比列
如下面所看到的的是两个表格,这种表格只有一个条件和一个值,相对比较简单.
在其中某一个表中输入公式如下所示:
=IFERROR(VLOOKUP(A2,$E$2:$F$11,2,0),'没有数值')
意思就是从第二个表格中进行查找,能够找到就直接调取数值,找不到就显示'没有数值'.
做完以上公式,你可以选择做一个重复值的标记条件格式,进行标记.
这样就可以对比找到差异的位置.
或者你可以直接输入以下公式:
=IFERROR(VLOOKUP(A2,$E$2:$F$11,2,0),0)-B2
直接算出差异有多少.
除此以外,如果你觉得公式方法比较繁琐,
你还可以使用高级筛选.
选择第一个表,做高级筛选,条件选择第二个表,
操作如下:
高级筛选用完之后,填充一个颜色,然后取消高级筛选.
被填充颜色的部分就是第二个表格中存在的,
未填充颜色的部分,就是差异值.
3
对比多条件两表
这种对比核对两表的情况是最多的,
在这个过程中,会有各种情况,大家一定要看好咯.
下图是两个表格,表格的表头排列顺序是不一样的.
如何进行这种类型的表格对比?
第一种方法是最简单的,依然是使用高级筛选,
操作如下图,
需要特别特别注意,因为是跨表格使用高级筛选,所以当你选择高级筛选的时候,选择的表格范围,一定要重新框选范围,
意思就是在范围中一定有表格的名称.
用高级筛选的目的就是,高级筛选只需要表头名称一样,但是顺序可以错误不受影响.
再填充颜色,填充之后,再取消高级筛选,
未填充颜色的部分就是差异部分.
不管是对比两表还是两列,都可能存在以下的情况,我们之前所讲的是以下这种情况,表1包含表2,所以可以以表2为条件进行查找,或者用高级筛选,以表2为条件.
这个地方大家一定要想通..
很多时候,核对两表的时候,情况都极有可能如下所示,表1和表2有交集的部分,也有独立的部分,那么这样的对比才是更加符合实际场景意义的.
如果你想通了,用高级筛选去做,就应该两表都互为参照条件的去做高级筛选,分别标记颜色,才是符合第二种意义的.
大家可以去尝试一下..操作基本和上面一样,只是需要操作两次而已.
接下来,我们以第二种场景为案例,
来看看如何使用公式进行操作对比.
由于,要使用公式,表头顺序错乱,
所以第一步应该是做一个横向排序.
选择表1,选择排序,选项中选择按照行去排序,并且选择第一行进行排序.
表2也是做同样的方法做一个排序,
那么两个表格的表头排序就一样了!
做好上述的准备工作,
选择名称管理器,在表1中做新建名称如下:
在名称管理器中,把表格的每一列都拉进去,中间用连接符号连接在一起.
然后去到表2,输入公式如下:
=IF(ISNUMBER(MATCH(CONCAT(A2:F2),表1,0)),'√','×')
考虑到版本因素,我用到的老函数的方法,
CONCAT函数的意义在于,连接A到F的所有内容,
然后MATCH连接内容,在刚才的[表1]名称管理中进行MATCH.
能够MATCH到内容就是表2中有表1的内容,并且是对等的.
如果MATCH是错误值就是表2和表1有差异的位置.
同样的操作,可以对表2进行每一列的名称管理合并,然后在表1中进行MATCH匹配,道理和上方一样,
这样的话,就可以分别在两个互有交集,又互有独立部分的两表中进行分别的核对了.
最后提一嘴,
做名称管理的目的在于,缩短公式,如果不是名称管理去做的,MATCH函数也是直接可以做出来但是函数会很长,
关于多条件的查找,我们之前是讲过的,大家可以翻阅一下历史记录.
解决很多实际问题的时候,其实很多方法都是很迂回的,
如果,还是有一些模糊,你可以参照我做好的课件
联系客服