宇宙最强!Excel 重复值、重复项的问题看这就够了

您所在的位置:网站首页 excel新增一列排序 宇宙最强!Excel 重复值、重复项的问题看这就够了

宇宙最强!Excel 重复值、重复项的问题看这就够了

2023-05-03 11:09| 来源: 网络整理| 查看: 265

注意本文精华在2.3一节,对比两个集合的数据。基础好的同学可以直接去2.3查看

来说一个本文中的概念,重复值重复项。此概念仅用作本文中,请勿抬杠。【删除重复值】工具不使用此“值”、”项“的概念。

如果数据是一列,或者一行,认为这里是重复值问题。如:产品序列号、身份证号、或其他数据中的唯一值字段等。

如果数据是多列,一行数据在一起才能描述一个数据的状态,认为是重复项问题。

红色、鞋子绿色、书包红色、书包

单说颜色或者物品都不足以描述一条准确数据,合在一起才是一条完整的数据项。

这里我们分别讨论重复值重复项的以下3种工作:

一组数据中,删除重复,重复数据只保留一条一组数据中,标记\提取重复,区分哪些是重复数据两个数据集之间,进行比较,比较两组数据中的重复或不重复数据1.重复值问题

由于重复值每个单元格就可以准描述数据,所以问题相对简单。

1.1 删除重复值1.1.1使用“删除重复值工具”

这里的”重复值工具“是Excel的一个按钮,不要纠结到底是”“还是”“。但实际上,此工具两种情况都能完成删除的效果。

使用方法,数据定位到当前数据区域中的一个单元格,像这样:

或者定位要需要删除的数据区域,像这样:

点击数据=>数据工具=> 删除重复值

点击按钮之后,前者会扩展选定的区域。如果扩展的范围不准确,请使用后者手动选择区域。

这里的列,图中是”名称、缩写“,是判定是否被删除的重要选项。

如果都勾选,含义是名称、缩写都分别相同的两条数据才算重复,才会被删掉。

这里我们演示的是重复值的删除重复,那么应该是只选择其中一个。这样点击确定就可以完成删除重复值操作了。

1.1.2 先标记再删除

标记重复值的办法有几种,下一节就说了。通过不同的方式进行标记,删除的方法不尽相同。

1.2 标记\提取重复值1.2.1 公式CountIf方法

公式是计算某个区域满足给定条件的单元格数目。

通过函数计算出全部“缩写”区域中BOS的个数、BKN的个数、NYK的个数……以此类推计算整个列的数量。

这里要注意绝对引用相对引用的使用。

整个“缩写”区域是固定的,用绝对引用。

要向下填充,B2是相对引用。至少是$B2,用B2也没关系。

这里可以使用排序工具进行排序“重复数量”一列。排序后数量大于等于2的表示“缩写”列有重复的。

或者使用IF函数嵌套一下:

然后可以进行手动选定重复的项目再进行进行。这里不要把两个重复的都删了,那就缺项了。删一个就好。

1.2.2 条件格式方法

条件格式的方法非常简单,先选中需要排除重复的区域,可以是一列或者一行或者多行多列。

再点击开始=>样式组中的条件格式=>突出显示单元格规则=>重复值。

然后选择一种样式

确定之后就可以看到重复值被高亮显示了。为了方便删除,可以右键点击高亮的单元格,选额排序,把重复值排列到一起方便删除。

当然注意事项:还是要进行手动删除,不要一下删了多个,会缺项的。

1.3 两个或多个集合之间的比较

这里有一种特别的情况,要对比重复的数据在不同的数据集中。比如比较两列之间的重复值。那么除了可以使用之前的条件格式方法,还可以使用定位工具。

比如这样的数据,有A列B列,我要比较A和B列之间是否重复。AB保持顺序一致数量大致相同仅有个别数据的不同的情况下使用。请务必注意此使用条件。

因为此工具的原理是,后面每一列都和第一列【选中单元格所在列】进行比较,自动选择和该列不同的单元格。

可以使用快捷键Ctrl + \ 定位到“行内容差异单元格”。按下快捷键之后会变成这样:

这时候不妨顺手标记个颜色。你就找到了不重复的值。排除掉不重复的就是重复的啦。

同样Ctrl + \ 也可以使用F5或者Ctrl + G选择“行内容差异单元格”来实现,意思一样。

再同理可得,如果数据是两行,要比较两列的不重复值。使用Ctrl + Shift + \。或者调出定位对话框选择“列内容差异单元格”。

2. 重复项问题

重复项的问题是重复值问题的超集。重复项问题的处理方法都可以用来处理重复值的问题。

首先,我们来看看什么是重复项。

这里有一个表,记录一些足球比赛的信息。 由于没有唯一值字段,确定一场比赛只能使用多个值,比如图中的2019年10月10日中国对关岛主场7:0的世界杯预选赛,在中国广州举行的。

要求全部信息都拿到才能准确指明是哪一场比赛。那么这样的包含多个信息的一条数据叫它一项,如果整条信息中的每个字段都完全相等,我们认为这是重复项。

2.1 删除重复项

我们删除重复项还是可以使用“删除重复值工具进行”。注意勾选根据需要勾选字段即可。

如果要求“不重复的比赛信息”,那么用来确定一场比赛的所有字段都要勾选。

注意,如果要求问“有足球比赛日期有那些”工作内容变为:每个日期保留一个,问题就又变为重复值问题。这里只勾选日期即可。

2.2 标记/提取重复项

CountIf还是可以用在重复项问题中,但是要提前新建一个辅助列。此辅助列要包含唯一值,如果没有唯一值,只能将一条数据中全部字段信息进行字符串连接(&连字符),得到的结果来充当唯一值。将重复项问题转为重复值问题。但是这里存在一个效率问题。如果数据量较大,构筑辅助列的时候可能会有明显卡顿,甚至Excel程序失去响应。比如刚才的问题,辅组列可能需要这样构建。(最后一个字段neutral【是否打平】由比分决定,因此辅助列构建的时候并不是必须的。)

当然这是不推荐的。辅助信息显得杂乱,数据量大时候效率低下。对于数据量较少的还是可以使用。着色问题可以继续使用【查找重复值】的条件格式法,这里就不展开说了。 如果想保留条件格式的格式,变为单元格格式,可以尝试使用剪贴板工具栏,用点击的方式粘贴保留格式,进而还可以将着色部分填充到满行,不仅仅是一个辅助列。

2.3 两个数据集合间的比较

这里才是本文的重点!!!学会这个技巧,前面的问题都能解决。

这里才是本文的重点!!!学会这个技巧,前面的问题都能解决。

这里才是本文的重点!!!学会这个技巧,前面的问题都能解决。

当然你可以选择使用链接字符公式将所有字段都连接起来,在用列内容差异的办法处理。但是效率低,字段多的话也很费力。

2.3.1 【删除重复值】工具的特点

【删除重复值】工具有一个特点:它只会删除从上到下的,第二、第三、第N个数据,总会保留第一个不重复数据。

我们为了验证,做一个测试:

可见删除重复之后的颜色是红和黄。红黄是数据的从上至下的第一个不重复值。

有了这个特点,我们就可以进行数据集合的减法操作。发现那些属于数据B集合中,但是不属于集合A中的数据。或者共同存在与AB中的数据。怎么就能求减法了,听我慢慢道来。

比如如下集合的概念,先看一眼是否能够明确看懂和理解。

A:1、2、3、5B:2、3、4、6B-A则结果为:4、6A-B则结果为:1、5A和B的全集为:1、2、3、4、5、6A和B的交集为:2、3

如果到这里,都理解了,我们继续。

先用Excel来个减法试试手。

第1步,A集合在上,B集合在下

第2步,B集合标记一个颜色

第3步,使用一次【删除重复值】工具

第4步,找到结果中带有颜色的部分,这部分数据就是B-A,编号4、6的就是。

有了减法操作,如何进行交集的运算呢,毕竟交集才是两个数据集的重复数据呀。交集用这个长的像n的符号表示,那么A和B交集就是:

A\cap B = B-(B-A)

我们再用图片理解一下

B-A如下:

B-(B-A)如下:

好了,这里明白。只要多使用一次【删除重复值】工具就可以求出交集了。

操作步骤如下:和刚才很相似。

刚才求到的B-A去掉颜色把B集合重新粘贴在下方把B集合标记颜色使用【删除重复值】工具保留带颜色部分,这部分就是AB交集。

这里的结果就是交集,同时存在于A合集与B集合中的数据了。赶紧动手试试吧。

2.4 再谈2.2中的标记/提取重复项的问题

那么说了半天【删除重复值】工具,连接各个字段效率低,那么是否有更好的在单个数据集提取重复项的办法呢?

答案是当然有的。

如果你认真的看了2.3的内容。那么这个提取重复项的问题应该已经会了。当然还是使用“删除重复值”工具。具体步骤如下:

增加唯一值辅助列自定义ID复制一份原始数据 Source使用【删除重复值】工具,不要勾选自定义ID粘贴一份原始数据 Source 在第3步数据的下方,并标记颜色使用【删除重复值】工具,全部字段都勾选删除其他,保留带颜色的部分

可以停下来细品一下,每个步骤的作用和为什么这么做,理解了之后,就不难记住了。

以下是提取重复值的过程,有这样一个教师信息表,里面有重复数据。要求不使用连接字符的办法。提取重复值,按照上面的步骤。先增加ID

增加ID之后:

将其复制一个Sheet为原数据Source。然后删除重复值,不勾选ID。删除重复之后:

删掉了一个数据,然后将刚才的Source复制到下方,并标记颜色:

这次删除重复值,勾选包含ID在内的所有列。

显而易见的绿色数据区域,就是我们要的重复值。删掉没有背景颜色的数据和ID列即可。

总结

【删除重复值】的工具很强大,勾选字段,可以定义重复的原则是什么。

【删除重复值】特性:删除第二、第N个重复值,提前标记颜色帮助我们区分数据集。

能计算两组数据交集,提取一组数据中的重复值。

由于写文章的时候疏漏,数据透视表的方法获取重复值的方法没有涵盖。大概就是新建数据透视表,把要显示的重复值的项拉到行标签或者列标签即可。

最后如果你嫌弃这些粘来粘去的太麻烦,我做了一个加载宏,拿走不谢。人品保证没有病毒,装了各种不服管的管家软件的请酌情处理。WPS用户不保证能用,估计总得要先开个WPS会员。

链接:https://pan.baidu.com/s/17A9A_MXl9Ex_FtsHsOtv3g

提取码:mtgg

加载宏演示:

祝各位玩的开心。以下是学VBA的可以参考的书籍。有疑问可以加微信反馈。承接表格定制,VBA定制,请进我的付费咨询。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3