在 Excel 中查找、突出显示、筛选、统计和删除重复项
在 Excel 中,无论是手动录入数据、从其他来源复制内容,还是出于其他原因,重复数据都可能反复出现。有时,重复项是必要且有用的;但有时,它们却会引发错误或造成误解。本文将为您介绍如何在 Excel 中借助公式、条件格式规则以及第三方加载项等方法,快速识别、突出显示、筛选、统计并删除重复项。
目录
- 1. 查找并突出显示重复项1.1 使用公式查找重复项1.2 使用条件格式查找并突出显示重复项1.3 以不同颜色突出显示重复项1.4 使用第三方加载项查找并突出显示重复项
- 2. 筛选重复项
- 2.1 使用使用条件格式筛选重复项
- 2.2 使用辅助列筛选重复项
- 3. 统计重复项3.1 带条件统计重复值3.2 统计一列中重复项的总数3.3 统计两列中的重复项3.4 每个重复项仅计数一次3.5 统计一列中每个重复值的出现次数3.6 按顺序统计重复项
- 3.1 带条件统计重复值
- 3.2 统计一列中重复项的总数
- 3.3 统计两列中的重复项
- 3.4 每个重复项仅计数一次
- 3.5 统计一列中每个重复值
- 3.6 按顺序统计重复项
- 4. 删除重复项4.1 删除一列中的重复项(仅保留一项)4.2 删除重复项及其原始值4.3 根据一列中的重复项删除整行4.4 删除两列中的重复项
1. 查找并突出显示重复项
当在某一列或区域中遇到重复值时,您可能希望快速找出重复项。本部分将介绍如何在 Excel 中分类搜索或识别列中的重复数据,并根据某列中的重复项突出显示重复的单元格、行或高亮行区域。
1.1 使用公式查找重复项
本节介绍了一些公式,用于快速查找或识别一列或两列中的重复值。
1.1.1 使用公式在一列中查找重复单元格
当仅在一列或列表中查找重复单元格时,我们可以使用 COUNTIF 函数轻松快速地找出并统计重复数据。
1. 选择目标列旁的空白单元格,用于查找重复项。
2. 输入公式 =COUNTIF($C$3:$C$12, C3)>1,然后按 Enter 键。
3. 拖动公式单元格的自动填充柄,即可将此公式快速复制到其他单元格。

注:在公式 =COUNTIF($C$3:$C$12, C3)>1 中,
(1)$C$3:$C$12 是您要查找重复值的列或列表。由于将公式复制到其他单元格时,该区域需保持不变,因此通常使用“$”进行绝对引用。
(2)C3 是指定列中的第一个单元格。此处采用相对引用,以便在将公式复制到其他单元格时,它能自动调整。
(3) 此公式将返回 TRUE 或 FALSE。TRUE 表示对应值为重复项,而 FALSE 表示该值在列中唯一。
(4) 有时,TRUE 或 FALSE 不够直观。可将原公式与 IF 函数结合,直接返回重复项。
=IF(COUNTIF($C$3:$C$12, C3)>1,“重复项“,““)
1.1.2 使用公式在两列中查找重复单元格
在某些情况下,您需要比较两列并找出重复值。例如,您有两份名称列表,希望找出第二份列表中相对于第一份列表的重复姓名。您可以轻松地结合使用 VLOOKUP 和 IFERROR 函数来完成此操作。
1. 在第二个名称列表旁选择一个空白单元格。
2. 输入公式 =IFERROR(VLOOKUP(D3,$B$3:$B$18,1,0),""),然后按下 Enter 键。
3. 拖动公式单元格的自动填充柄,即可将公式快速复制到其他所需单元格。

注:在上述公式中,
(1)D3 是第二个名称列表中的第一个单元格。由于在将公式复制到其他单元格时,该引用需自动调整,因此采用相对引用。
(2)$B$3:$B$18 是姓名列表。此处采用绝对引用,因为在将公式复制到其他单元格时,该区域需保持不变。
(3) 当某个名称与第一份列表中的名称重复时,公式将返回该名称;否则返回空白。
(4) 您也可以使用公式 =IF(COUNTIF($B$3:$B$18,D3)>0,“重复项“,““),快速找出第二份列表中相对于第一份列表的重复姓名。若对应名称重复,该公式将返回“重复项”。
(5) 如需跨两个工作表对两列进行查重,只需在被比较列的引用前添加工作表名称即可。在我们的示例中,只需将公式中的 $B$3:$B$18 改为 Sheet 1!$B$3:$B$18 即可。
1.1.3 查找区分大小写的重复公式
上述公式在查找重复项时不区分大小写,即“apple”会被视为“APPLE”的重复项。您可以使用数组公式在单列中查找重复值,同时区分大小写。
1. 在要查找重复项的列旁选择一个空白单元格。
2. 输入数组公式 =IF(SUM((--EXACT($C$3:$C$12,C3)))<=1,““,“重复项“),然后按下 Ctrl+Shift+Enter 键。
3. 拖动公式单元格的自动填充柄,即可将数组公式复制到其他单元格。

注:在上述数组公式中,
(1)$C$3:$C$12 是您要查找重复值的列。该引用为绝对引用,因为在将数组公式复制到其他单元格时,引用需保持不变。
(2)C4 是该列中的第一个单元格。该引用为相对引用,因为在将数组公式复制到其他单元格时,引用会自动调整。
(3) 若对应单元格为重复项,数组公式将返回“重复项”,否则返回空白。
1.2 使用使用条件格式查找并突出显示重复项
有时,您可能需要标记重复值或行,以提醒自己或读者。本节将指导您使用使用条件格式规则突出显示重复的单元格或行。
1.2.1 使用使用条件格式查找并突出显示重复单元格
您可以使用使用条件格式功能,快速在列或区域中突出显示重复单元格。
1. 选择要突出显示重复单元格的列。
2. 单击开始 > 使用条件格式 > 突出显示单元格规则 > 重复值。参见下图:

3. 在弹出的重复值对话框中,从第一个下拉列表中选择重复,从第二个下拉列表中选择一种突出显示方案,然后单击确定按钮。
注:如果预设的突出显示方案无法满足您的需求,您可以从第二个下拉列表中选择自定义格式,然后在弹出的“设置单元格格式”对话框中按需设置突出显示颜色、字体和单元格边框。
随后,您将看到所选列中的所有重复单元格均已按如下截图所示突出显示。
注:
(1) 突出显示重复单元格后,即可轻松筛选出这些重复项。(点击查看方法)
(2) 突出显示重复单元格后,还可轻松批量删除这些重复项。(点击查看方法))
1.2.2 根据重复单元格查找并高亮行区域
有些用户希望根据某列中的重复单元格来高亮行区域。在这种情况下,我们可以创建一个自定义使用条件格式规则来实现此目的。
1. 选择您要基于重复单元格高亮显示行的区域(不包括标题行)。
2. 单击开始 > 使用条件格式 > 新建规则。

3. 在“新建格式设置规则”对话框中,
(1) 选择使用公式确定要设置格式的单元格选项;
(2) 在“为符合此公式的值设置格式”框中输入公式=COUNTIF($C$3:$C$12,$C3)>1;
提示:在公式中,$C$3:$C$12 是包含重复单元格的列,而$C3 是该列中的第一个单元格。
(3) 单击格式按钮。

4. 在“设置单元格格式”对话框中,按需指定填充颜色、字体和单元格边框,然后依次单击确定按钮以保存设置。

至此,在选择区域中,各行已根据指定列中的重复单元格进行了突出显示。参见截图:

1.2.3 使用使用条件格式查找并突出显示重复行
要突出显示某个范围内的重复行,您也可以使用条件格式功能来实现。
1. 选择除标题行以外的区域。
2. 单击开始 > 使用条件格式 > 新建规则。

3. 在“新建格式设置规则”对话框中:
(1) 单击选中使用公式确定要设置格式的单元格选项;
(2) 在为符合此公式的值设置格式框中,输入公式 =COUNTIFS($B$3:$B$12,$B3,$C$3:$C$12,$C3,$D$3:$D$12,$D3)>1;
(3) 单击格式按钮。

注释:在公式 =COUNTIFS($B$3:$B$12,$B3,$C$3:$C$12,$C3,$D$3:$D$12,$D3)>1 中:
(1) $B$3:$B$12 是范围中的第一列,$B3 是该列的首个单元格;
(2) $C$3:$C$12 是范围中的第二列,$C3 是该列的首个单元格;
(3) $D$3:$D$12 是范围中的第三列,$D3 是该列的首个单元格;
(4) 若范围包含更多列,可在公式中依次添加对应列的引用及其首个单元格。
4. 在“设置单元格格式”对话框中,按需指定突出显示颜色、字体、单元格边框等,然后依次单击确定按钮以保存设置。

至此,重复行已在选择区域中被识别并突出显示。请参见截图:

1.2.4 查找并突出显示除首次出现外的重复项
您可能已经注意到,上述方法会识别或突出显示所有重复项。但有时,您只想查看首次出现之后的重复项。此时,只需使用条件格式功能并配合不同的公式即可轻松实现。
1. 选择包含标题的列。
提示:如需根据某一列中除首次出现外的重复项高亮整行,请选择不含标题行的区域。
2. 单击开始 > 使用条件格式 > 新建规则。

3. 在“新建格式设置规则”对话框中:
(1) 单击以突出显示使用公式确定要设置格式的单元格选项;
(2) 在为符合此公式的值设置格式框中,输入公式 =COUNTIF($C$3:$C3, C3)>1;
提示:要根据某一列中的重复项高亮整行,请输入公式 =COUNTIF($C$3:$C3, $C3)>1.
(3) 单击格式按钮。
4. 在弹出的“设置单元格格式”对话框中,按需指定突出显示颜色、字体、单元格边框等,然后单击确定按钮保存设置。
随后,您将看到所选列中(或基于指定列中重复项的行)除首次出现外的重复单元格已被突出显示。请参见截图:

1.3 用不同颜色查找并突出显示重复项
使用使用条件格式功能突出显示重复单元格或行时,所有重复项都会以相同颜色显示。但如果为不同的重复值系列应用不同颜色,将更便于阅读和区分差异。这里提供一段 VBA 代码,助您在 Excel 中轻松实现这一效果!
1. 按下 Alt+F11 键,即可打开 Microsoft Visual Basic for Applications 窗口。
2. 在窗口中,单击插入 > 模块,然后将下方代码粘贴到新模块窗口中。
VBA:以不同颜色突出显示重复单元格:
Sub HighlightDuplicatesInDifferentColors()
'Update by Extendoffice 20201013
Dim xURg, xRg, xFRg, xRgPre As Range
Dim xAddress As String
Dim xDt As Object
Dim xFNum, xCInt As Long
Dim xBol As Boolean
Dim xWs As Worksheet
Dim xSArr
Set xRg = Application.ActiveWindow.RangeSelection
If xRg.Count > 1 Then
xAddress = xRg.AddressLocal
Else
xAddress = xRg.Worksheet.UsedRange.AddressLocal
End If
On Error Resume Next
Set xURg = Application.InputBox("Select range:", "Kutools for Excel", xAddress, , , , , 8)
If xURg Is Nothing Then Exit Sub
Set xURg = Intersect(xURg.Worksheet.UsedRange, xURg)
Set xDt = CreateObject("scripting.dictionary")
Set xWs = xURg.Worksheet
xCInt = 5
xBol = Application.ScreenUpdating
Application.ScreenUpdating = False
For xFNum = 1 To xURg.Count
Set xFRg = xURg.Item(xFNum)
If Not IsError(xFRg) Then
If xFRg.Value <> "" Then
If xDt.exists(xFRg.Text) Then
xSArr = Split(xDt(xFRg.Text), ";")
If xSArr(1) = "Only" Then
xCInt = xCInt + 1
xSArr(1) = xCInt
Set xRgPre = xWs.Range(xSArr(0))
xRgPre.Interior.ColorIndex = xCInt
xDt(xFRg.Text) = xSArr(0) & ";" & xSArr(1)
End If
xFRg.Interior.ColorIndex = xSArr(1)
Else
xDt(xFRg.Text) = xFRg.Address & ";Only"
End If
End If
End If
Next
xURg.Worksheet.Active
xURg.Select
Application.ScreenUpdating = xBol
End Sub 3. 按下 F5 键或单击运行图标,即可运行此 VBA。
4. 在弹出的 Kutools for Excel 对话框中,选择要以不同颜色突出显示重复单元格的列,然后单击确定按钮。

现在,每个重复值系列都将使用不同的颜色进行突出显示。

1.4 使用第三方加载项查找并突出显示重复项
本节将推荐第三方加载项提供的一些易用工具,帮助您轻松根据单列中的重复项快速查找、选择并突出显示重复的单元格或行。
1.4.1 在单列中查找并突出显示重复单元格
我将介绍的第一个工具是 Kutools for Excel 提供的选择重复/唯一单元格功能,可轻松快速地找出唯一值或重复单元格。
1. 选择要查找并突出显示重复单元格的列或区域。
2. 单击 Kutools > 选择 > 选择重复/唯一单元格。
3. 在“选择重复/唯一单元格”对话框中,按需勾选选项,然后单击确定按钮即可完成操作。
注释:在“选择重复/唯一单元格”对话框中,
(1) 若需选择或突出显示除首次出现外的所有重复项,请勾选重复值(排除第一个符合的)选项;否则,请勾选重复值(包括第一个符合的)选项。
(2) 若需突出显示重复项,请勾选填充背景颜色选项,并按需指定高亮颜色。
(3) 若希望根据所选列中的重复项选择或高亮整行区域,请勾选选择整行选项。
(4) 若需区分大小写来选择或突出显示重复值,请勾选区分大小写选项。
1.4.2 在两列或两个工作表中查找并突出显示重复单元格
Kutools for Excel 还提供了单元格对比工具,帮助我们轻松查找并突出显示两列中的重复单元格。
1. 单击 Kutools 中的单元格对比,即可打开“选择相同/不同单元格”对话框。
2. 在“选择相同/不同单元格”对话框中,于查找值所在列和依据列框中指定两列,勾选相同值选项,并按需勾选其他选项。
备注:
(1)如果您需要查找重复行,请勾选每行选项;若要查找重复单元格,请勾选单个单元格选项,该选项位于依据部分;
(2)如需高亮显示重复行或单元格,请勾选填充背景颜色选项并指定高亮颜色;
(3)如需根据重复项选择或高亮显示整行,请勾选选择整行选项;
(4)如需查找或高亮显示区分大小写的重复项,请勾选区分大小写选项。
3. 依次点击确定按钮,完成设置。
随后,您将在在以下位置查找值框中指定的列内,看到重复项已被识别并高亮显示。

2. 筛选重复项
有时,某一列中会出现重复项,而我们只想查看与重复数据相关的记录。因此,本部分将介绍两种仅筛选出重复数据的解决方案。
2.1 使用使用条件格式筛选重复项
此方法将指导您利用条件格式规则识别并高亮重复单元格,随后在 Excel 中轻松按高亮颜色筛选。
1. 应用条件格式,在指定列中查找并高亮重复项。(点击查看操作方法)
3. 继续单击列标题中的筛选图标
,选择按颜色筛选,然后在下拉列表中选择指定的条件格式颜色。参见截图:

此时,仅包含重复单元格的行将被筛选出来。参见截图:

2.2 使用辅助列筛选重复项
此外,我们还可以在辅助列中使用标记重复项公式,然后通过该辅助列在 Excel 中轻松筛选重复项。
1. 在原始数据旁新增一列作为辅助列,并将列标题设为重复项。
2. 选中该列标题下方的第一个空白单元格,输入公式 =IF(COUNTIF($C$3:$C$12,C3)>1,"Duplicate",""),然后拖动填充柄,将公式快速复制到其他单元格。

备注:在上述公式中,$C$3:$C$12 是包含重复数据的列,而 C3 是该列中首个数据单元格(不含标题)。
3. 单击“重复项”标题,然后单击数据> 筛选。

4. 然后点击列标题中的筛选图标
,仅勾选重复项,再点击确定按钮。参见截图:

至此,仅包含重复值的行被筛选出来。参见截图:

3. 统计重复项
本部分将指导您在 Excel 中统计重复值的数量。内容涵盖按条件统计重复项、统计重复项总数、仅统计一次重复项,以及批量统计每个重复值等方法。
3.1 按条件统计重复值
通常,我们可以使用 =COUNTIF(范围, 条件)函数,快速统计某个特定值在指定区域中出现的总次数。例如,要统计列表 A2:A10 中“Apple”出现的次数,只需输入公式 =COUNTIF(A2:A10, "Apple"),即可轻松得出该重复值的数量。
然而,公式 =COUNTIF(范围, 条件) 仅能统计指定的重复值。如果需要根据两个或多个条件统计重复值,或者需要区分大小写地统计带条件的重复值,该怎么办?以下方法可帮助您解决这些问题。
3.1.1 按条件统计区分大小写的重复项
我们可以在 Excel 中使用数组公式,按条件统计区分大小写的重复值。例如,要在列表 B2:B21 中统计值“Apple”出现的次数(区分大小写),可按如下步骤操作:
1. 选择一个空白单元格。
2. 输入公式 =SUM(--EXACT(B2:B20,E2))。
3. 按下 Ctrl+Shift+Enter 即可返回统计结果。

备注:在该数组公式中,
(1)B2:B20 是您要统计重复项的列。
(2)E2 是包含要统计出现次数的指定值的单元格。您也可以将单元格引用替换为带引号的值,例如 "Apple"。
3.1.2 按多个条件统计重复项
有时,您可能需要根据两个或更多条件统计重复项,此时可使用 COUNTIFS 函数轻松实现。
例如,下图所示为一份水果销售表,现需统计在 2020 年 7 月 5 日售出、销售额大于 300 的“apple”的重复次数。您可按以下方式使用这些条件快速统计重复项:

1. 请选择一个空白单元格。
2. 输入公式 =COUNTIFS(B3:B20,G4,C3:C20,G3,D3:D20,">300")。
3. 按下 Enter 键即可获取统计结果。

备注:在上述公式中,
(1)B3:B20 是(第一个)日期列,G4 为日期条件;
(2)C3:C20 是(第二个)水果列,G3 为水果条件;
(3)D3:D20 是(第三个)金额列,">300" 为金额条件。
(4)若您的表格包含更多列和条件,可继续添加列引用及对应条件。
3.2 统计一列中重复项的总数
假设某列中有一系列数值,您希望统计该列表中重复项的总数,该如何操作?本节将为您介绍在 Excel 中统计一列中重复值总数的操作指南。
3.2.1 统计一列中排除首次出现的重复项
若要统计某一列中除首次出现外的所有重复项,请按如下步骤操作:
1. 在该列旁选择一个空白单元格。
2. 输入公式 =IF(COUNTIF($B$3:B3,B3)>1,"YES",""),然后向下拖动填充柄,即可将公式快速复制到其他单元格。
备注:在上述公式中,
(1)$B$3:B3 是您统计重复项的范围。将公式复制到其他单元格时,$B$3:B3 中的 B3 会自动更新。
(2)B3 是指定列中的首个单元格。
(3)此公式将返回 YES 或空白:YES 表示对应值为重复项,空白则表示唯一值。
随后,指定列中的所有重复项均被标识出来。我们可以通过统计公式结果来获得重复项的总数。
3. 选择一个空白单元格。
4. 输入公式 =COUNTIF(C3:C16,"YES"),然后按 Enter 键。
备注:在上述公式中,
(1)C3:C16 是我们在上一步中应用公式以标记重复项的单元格范围。
(2)YES 是上一个公式所返回的值。
然后我们即可获得指定列中重复值的总数。重复项的总数不包括首次出现的项。
3.2.2 统计一列中包含首次出现的重复项
若要在 Excel 中统计包含首次出现项在内的所有重复项数量,您可以使用数组公式来实现。
1. 请选择一个空白单元格。
2. 输入公式 =ROWS(B3:B16)-SUM(IF(COUNTIF(B3:B16,B3:B16)=1,1,0))。
3. 按下 Ctrl+Shift+Enter 即可返回计数结果。

备注:在上述公式中,B3:B16 是我们要统计包含首次出现项在内的重复项的指定列。
3.2.3 统计一列中包含/排除首次出现的重复项
Kutools for Excel 提供的选择重复/唯一单元格功能,可帮您快速统计指定列表或列中重复值的数量(可选是否包含首次出现项),简化工作流程,告别冗长枯燥的公式记忆!
1. 选择要统计重复值数量的列,然后单击 Kutools > 选择 > 选择重复/唯一单元格。
2. 在“选择重复/唯一单元格”对话框中,根据需要勾选重复值(排除第一个符合的)或重复值(包括第一个符合的)选项,然后单击确定按钮。

3. 随后将选中所有重复值(包含或排除首次出现项),并弹出对话框显示已选中的单元格数量,请参见上方截图。
3.3 统计两列中的重复项
3.3.1 使用公式统计两列之间的重复项
假设您想要比较两个名称列表并统计它们之间的重复项数量。如何快速解决此问题?我们也可以通过 Excel 中的公式来完成。
1. 请选择一个空白单元格。
2. 输入公式 =SUMPRODUCT(--(ISNUMBER(MATCH(B3:B12,D3:D18,0))))。
3. 按下 Enter 键。

备注:在上述公式中,
(1)B3:B12 是您要统计重复项的第一个姓名列;
(2)D3:D18 是您要基于其统计重复项的第二个姓名列。
3.3.2 使用第三方加载项统计两列之间的重复项
或者,我们可以使用第三方插件 Kutools for Excel,轻松快速统计两列中重复单元格的总数。
1. 单击 Kutools > 选择 > 选择相同/不同单元格。
2. 在“选择相同与不同单元格”对话框中,
(1) 在查找值所在区域和依据框中分别指定两列。
(2) 勾选单个单元格选项。
(3) 勾选相同值选项。

4. 点击确定按钮。
随后将选中第一列中的所有重复单元格,同时弹出一个对话框,提示已选中的重复单元格数量。请参见截图:

备注:此功能将统计您在“选择相同/不同单元格”对话框的查找值所在区域框中所指定列的重复值总数。如需统计第二列中重复值的总数,请再次应用选择相同/不同单元格功能,并在查找值所在区域框中指定第二列。
3.4 仅统计一次重复项
有时,列中存在重复值。当我们在该列中统计数值时,需要对重复项仅计数一次。例如,有一组数值 A、A、B、C、C、C、D、E、E,我们需要统计这些值并得到 5(A、B、C、D、E)。本节将介绍两种公式来解决此问题。
3.4.1 使用公式对每个重复值仅统计一次
您可以使用以下公式快速对每个重复值仅计数一次:
1. 请选择一个空白单元格。
2. 输入公式 =SUMPRODUCT((C3:C19")/COUNTIF(C3:C19,C3:C19&""))。
3. 按下 Enter 键即可获取计数结果。

备注:在上述公式中,C3:C19 是您要对每个重复值仅计数一次的指定列。
3.4.2 使用数组公式对区分大小写的重复值仅统计一次
统计列表时,您可以在 Excel 中通过应用数组公式,使用区分大小写对每个重复值仅计数一次。
1. 请选择一个空白单元格。
2. 输入数组公式 =SUM(IFERROR(1/IF(C3:C19", FREQUENCY(IF(EXACT(C3:C19, TRANSPOSE(C3:C19)), MATCH(ROW(C3:C19), ROW(C3:C19)), ""), MATCH(ROW(C3:C19), ROW(C3:C19))), 0), 0))。
3. 按下 Ctrl+Shift+Enter 键,即可返回计数结果。

备注:在上述数组公式中,C3:C19 是您要用于区分大小写并对每组重复项仅计数一次的指定列。
3.4.3 使用第三方加载项对每个重复值仅统计一次
如果您已安装 Kutools for Excel,也可使用其统计含唯一值的单元格功能,在 Excel 中快速对每组重复值仅计数一次。
1. 请选择一个空白单元格。
2. 单击 Kutools > 公式助手 > 统计 > 统计区域中唯一值的个数(包含第一个重复值)。
3. 在公式助手对话框中,于范围框中指定要统计重复项的列,然后单击确定按钮。

随后计数结果将立即填入所选单元格中。
3.5 统计一列中每个重复值的数量
通常,我们可以使用 COUNTIF 函数逐个统计重复值,并重复操作以逐一处理其他重复项。然而,面对多个重复项时,此方法将耗费大量时间。本节将为您介绍三种高效解决方案,助您在 Excel 中轻松、快速完成此项任务!
3.5.1 使用 SUBTOTAL 函数统计一列中每个重复值的数量
我们可以在 Excel 中使用分类汇总功能,轻松统计列中每组重复值的数量。
1. 选择要统计各组重复值所在的列,然后单击数据> 升序 或 降序排序(Z 到 A)。
2. 在弹出的“排序警告”对话框中,勾选扩展选定区域选项,然后点击排序按钮。
随后您将看到所选区域已按指定列的重复值进行排序。
3. 保持所选区域处于选中状态,单击数据> 分类汇总。
4. 在“分类汇总”对话框中,
(1)从“分组依据”下拉列表中选择指定列;
(2)在“汇总方式”下拉列表中选择计数;
(3)仅在“添加分类汇总至”列表框中勾选指定列;
(4)单击确定按钮。
随后您将看到每组重复值均已被统计,并且统计结果已添加到每组重复值的下方,如上图所示。
3.5.2 使用数据透视表统计一列中每个重复值的数量
我们还可以创建一个数据透视表,以便在 Excel 中轻松快速地统计每组重复值。
1. 选择包含指定列的区域,然后单击插入> 数据透视表。

2. 在“创建数据透视表”对话框中指定新数据透视表的位置,然后单击确定按钮。

3. 在“数据透视表字段”窗格中,将指定列同时拖至行和值区域,即可批量统计该列中的每组重复值。参见截图:

3.5.3 使用一款强大工具统计一列中每个重复值的数量
如果您已安装 Kutools for Excel,即可使用其易用的高级合并行功能,快速统计指定列中每组重复值。
注意:“高级合并行”功能会根据指定关键列中的重复值修改所选区域并删除重复行。为保护您的数据,建议在执行此操作前先备份或将数据复制到其他位置。
1. 在原数据区域右侧添加一个空白列,并将新列命名为 Count。

2. 同时选中原数据区域和新列,然后单击 Kutools > 合并和拆分 > 高级合并行。
3. 在“高级合并行”对话框中,
(1)单击选择您要统计每组重复值的指定列,然后单击主键。
(2)单击选择新列(Count),然后单击计算> 计数。
(3)如有必要,请为其他列指定合并或计算类型。
(4)单击确定按钮。
随后,您将看到指定列中的每组重复值均被批量统计。参见截图:

3.6 按顺序统计重复项
假设某列中有一个水果列表,其中部分水果多次出现。现在您需要按出现顺序为每组重复水果添加标记,该如何实现?本节将介绍一个公式,帮助您在 Excel 中轻松完成此操作。
1. 在原始数据右侧插入一个空白列。
2. 在新增空白列的第一个单元格中输入公式 =IF(COUNTIF($C$3:$C$14,C3)>1,COUNTIF(C$3:C3,C3),"")。
3. 拖动该公式单元格的自动填充柄,即可将公式快速复制到其他单元格。

注意:在上述公式中,
(1)$C$3:$C$14 是您要按顺序统计重复值的指定列。
(2)C3 是该列中的首个单元格。
(3)若对应值为重复项,公式将按其出现顺序返回序列号 1、2、3……;若为唯一值,则返回空白。
4. 删除重复项
当一列或一个区域中堆叠了大量重复值时,一些用户希望找到简便方法快速删除这些重复值。本部分将介绍多种在 Excel 中轻松实现删除重复值的解决方案。
4.1 删除一列中除一项外的所有重复项
本节将向您展示如何在 Excel 中快速从一列或列表中删除除首次出现外的所有重复值。
4.1.1 使用删除重复功能删除除一项外的所有重复项
您可以直接使用删除重复功能,一键清除除首次出现外的所有重复值。
1. 选择要删除重复值(仅保留首次出现)的列。
2. 单击数据 > 删除重复。

3. 在“删除重复警告”对话框中,勾选继续执行当前选区选项,然后点击删除重复按钮。

提示:若要根据所选区域中的重复值删除整行,请勾选扩展选定区域选项。
4. 在“删除重复”对话框中,仅勾选指定列,然后单击确定按钮。

提示:如果在上一步中勾选了扩展选定区域选项,此处将列出所有列;但您仍需仅勾选指定列。
5. 随后将弹出一个对话框,显示已删除的重复值数量,单击确定按钮即可关闭。

4.1.2 使用高级筛选功能删除除一项外的所有重复项
您还可以使用高级筛选功能,轻松删除指定列中的所有重复值。
1. 单击数据 > 高级。

2. 在“高级筛选”对话框中,
(1)勾选将筛选结果复制到其他位置选项;
(2)在列表区域框中,选择要从中删除重复值的列;
(3)在复制到框中,指定粘贴该列的目标区域;
(4)勾选仅唯一记录选项;
(5)单击确定按钮。

随后,您将看到指定列已粘贴到限定区域中,且除首次出现外的所有重复值均已被移除。参见截图:

4.1.3 使用 VBA 删除除一项外的所有重复项
您也可以应用一段 VBA 代码,快速从 Excel 的某一列中移除除首次出现外的所有重复值。
1. 按下 Alt+F11 键,即可打开 Microsoft Visual Basic for Applications 窗口。
2. 单击插入> 模块,然后将下方的 VBA 代码粘贴到新打开的模块窗口中。
VBA:移除重复值,仅保留首次出现项
Sub ExtendOffice_RemoveAllDeplicate()
Dim xRg As Range
Dim xURg, xFRg, xFFRg As Range
Dim xI, xFNum, xFFNum As Integer
Dim xDc As Object
Dim xDc_keys
Dim xBol As Boolean
Dim xStr As String
Dim xWs As Worksheet
Dim xURgAddress As String
On Error Resume Next
Set xRg = Application.InputBox("Select range:", "Kutools for Excel", "", , , , , 8)
If xRg Is Nothing Then Exit Sub
Set xURg = Intersect(xRg.Worksheet.UsedRange, xRg)
Set xWs = xURg.Worksheet
Set xDc = CreateObject("scripting.dictionary")
xURgAddress = xURg.Address
xBol = Application.ScreenUpdating
Application.ScreenUpdating = False
For xFNum = 1 To xURg.Count
Set xFRg = xURg.Item(xFNum)
If (Not IsError(xFRg)) Then
If xFRg.Value <> "" And (Not IsError(xFRg)) Then
For xFFNum = xFNum + 1 To xURg.Count
Set xFFRg = xURg.Item(xFFNum)
If Not IsError(xFFRg) Then
If xFFRg.Value = xFRg.Value Then
xDc(xFFRg.Address) = ""
End If
End If
Next
End If
End If
Next
xStr = ""
xDc_keys = xDc.Keys
For xI = 1 To UBound(xDc_keys)
If xStr = "" Then
xStr = xDc_keys(xI)
Set xURg = xWs.Range(xStr)
Else
xStr = xStr & "," & xDc_keys(xI)
Set xURg = Application.Union(xWs.Range(xDc_keys(xI)), xURg)
End If
Next
Debug.Print xStr
xWs.Activate
xURg.Select
Selection.Delete Shift:=xlUp
xWs.Range(xURgAddress).Select
Application.ScreenUpdating = xBol
End Sub 3. 按 F5 键或单击运行按钮,即可运行此 VBA。
4. 在弹出的对话框中,指定要从中移除重复值的区域,然后点击确定按钮。

所有重复值(除首次出现外)已立即从限定区域中移除。
注意:此 VBA 代码为区分大小写。
4.2 删除重复项及其原始值
通常,我们会找出重复值和删除重复并保留首次出现的项。但在某些情况下,部分用户希望删除包括原始值在内的所有重复值。本节提供了一些解决方案来处理此问题。
4.2.1 使用使用条件格式删除所有重复项及其原始值
我们可以通过使用条件格式规则高亮显示某一列或列表中包括首次出现项在内的所有重复值,然后根据高亮颜色筛选出所有重复值。之后,即可批量选择并删除这些筛选出的重复单元格。
1. 使用条件格式高亮显示重复值。(单击此处查看操作方法)
2. 选择要从中移除重复值(包括首次出现项)的列,然后单击数据> 筛选。

3. 单击指定列标题中的筛选图标
,在下拉菜单中选择按颜色筛选,然后从子菜单中指定高亮颜色。

随后,所有重复值均被筛选出来。
4. 选中所有筛选出的单元格,右键单击,然后在上下文菜单中选择删除行;在弹出的确认对话框中,点击确定按钮即可继续操作。
5. 随后,所有重复值将被批量删除。保持筛选列表处于选中状态,再次单击筛选> 数据 即可取消筛选。

至此,您将看到包括首次出现项在内的所有重复单元格均已批量删除,仅保留唯一值。
注意:此方法将根据指定列中的重复值,删除整行。
4.2.2 使用辅助列删除所有重复项及其原始值
我们还可以通过公式在辅助列中标记包括首次出现项在内的所有重复值,然后根据公式结果筛选出重复值,最后批量删除这些筛选出的重复值。
1. 在指定列旁添加一个辅助列,并在辅助列的首个单元格中输入公式 =COUNTIF($B$3:$B$11,B3),然后向下拖动填充柄,即可将该公式自动复制到其他单元格。参见截图:

注意:在上述公式中,$B$3:$B$11 是您要从中移除重复值的指定列,而 B3 是该列的首个单元格。
2. 选择辅助列,然后单击数据> 筛选。

3. 点击辅助列标题中的筛选图标
,在下拉菜单中勾选除 1 外的所有值,然后单击确定按钮。参见截图:

4. 现在,所有重复值均已筛选完成。选中辅助列中筛选出的单元格,右键单击,然后在上下文菜单中选择删除行。

5. 在弹出的确认对话框中,单击确定按钮即可继续操作。
6. 现在,所有重复值及其所在行均已批量删除。请继续单击数据> 筛选 以取消筛选。

随后,您将看到包括首次出现项在内的所有重复值均已被批量删除。
4.2.3 使用一款强大工具删除所有重复项及其原始值
如果您已安装 Kutools for Excel,也可使用其选择重复/唯一单元格功能,在 Excel 中轻松快速地选择并删除所有重复值——包括或排除首次出现的项目。
1. 选择要删除重复项的列。
2. 单击 Kutools > 选择 > 选择重复/唯一单元格。
3. 在“选择重复/唯一单元格”对话框中,勾选重复值(包括第一个符合的)选项,然后单击确定按钮。

注意:
(1) 若要选择并删除重复值(排除首次出现项),请勾选重复值(排除第一个符合的)选项。
(2) 若要基于指定列中的重复值选择并删除整行,请勾选选择整行选项。
(3) 若要选择并删除区分大小写的重复值,请勾选区分大小写选项。
(4) 若要选择、高亮并删除重复单元格或行,请勾选填充背景颜色或填充字体颜色选项,并根据需要指定填充色或字体颜色。
4. 单击确定按钮,即可关闭随后弹出的对话框,该对话框会显示已选择的单元格数量。
5. 右键单击所选单元格,然后在上下文菜单中选择删除。

6. 在弹出的“删除”对话框中,勾选向上移动单元格选项,然后点击确定按钮。
至此,包括首次出现项在内的所有重复值均已批量删除。
4.3 基于一列中的重复项删除行
在大多数情况下,我们会先识别某一列中的重复值,然后根据重复值删除相应的整行。坦白地说,此操作与从单列中删除重复值非常相似。因此,我们可以采用类似的方法,根据指定列中的重复项来删除行。
第一种方法是使用内置的删除重复功能,根据指定列中的重复项自动删除整行。只需选中目标区域,点击数据> 删除重复 启用该功能,在弹出的“删除重复”对话框中仅勾选指定列,然后单击确定即可完成删除操作。

我们还可以结合条件格式与筛选功能,根据指定列中的重复值快速删除重复行。首先,通过条件格式规则高亮显示某列中包含重复值的整行(单击查看详情);其次,按高亮颜色筛选这些行;接着,轻松删除所有筛选出的行;最后,清除筛选,即可看到指定列中仅保留唯一值的行。

或者,您可以添加一个辅助列,并在指定列中输入公式 =COUNTIF($C$3:$C$21,C3),即可快速标记重复项。随后筛选辅助列中大于 1 的数值,轻松删除所有筛选出的行。清除筛选后,指定列将仅保留唯一值的行。

Kutools for Excel 的选择重复/唯一单元格工具还提供了一项极为便捷的功能,可快速根据指定列中的重复值选择行,再通过右键菜单轻松删除这些选定行。

Kutools for Excel 的高级合并行功能也能根据指定关键列中的重复值快速删除行。

4.4 删除两列中的重复项
有时,我们需要比较两个列表或两列,然后在 Excel 中删除它们之间的重复项。本节为您提供两种解决方案。
4.4.1 使用辅助列删除两列中的重复项
我们可以添加一个辅助列并应用公式来识别两列之间的重复值,然后轻松筛选并删除重复值。
1. 在要删除重复值的指定列旁添加一个空白列。
2. 在辅助列的第一个单元格(不含标题)中输入公式 =IF(ISERROR(MATCH(C2,$A$2:$A$13,0)),"Unique","Duplicate"),然后向下拖动填充柄,将公式快速复制到其他单元格。

注意:在上述公式中,
(1)C2 是您要从中删除重复值的指定列中的第一个单元格;
(2)$A$2:$A$13 是需要与之比较的另一列;
(3)当对应值与另一列中的值重复时,此公式将返回 Duplicate,若不同则返回 Unique。
3. 选择辅助列,然后单击数据> 筛选。

4. 单击辅助列标题中的筛选图标
,然后在下拉菜单中仅勾选 Duplicate,并点击确定按钮。

5. 现在所有重复值都已被筛选出来。选中这些单元格,右键单击,然后从上下文菜单中选择删除行,并在弹出的确认对话框中点击确定。
6. 随后,所有重复值均已从指定列中删除。请继续单击数据> 筛选 以再次取消筛选。
然后您会看到指定列中仅保留唯一值。如有需要,您可以删除辅助列。

注意:此方法会根据指定列中的重复值,删除整行数据。
4.4.2 使用一款强大工具删除两列中的重复项
如果您已安装 Kutools for Excel,即可使用其强大的选择相同/不同单元格功能,快速选中两列中的重复值并轻松删除。
1. 单击 Kutools > 选择 > 选择相同/不同单元格 以启用此功能。
2. 在“选择相同/不同单元格”对话框中,分别在查找值所在范围和依据范围框中指定两列,勾选单个单元格和相同值选项,然后单击确定按钮。参见截图:

3. 随后,两列中所有的重复值都会在第一列(即您在)查找值所在范围框中指定的列)中被选中。单击弹出对话框中的确定按钮。

4. 您可以直接按 Delete 键删除这些重复值,或右键单击后从上下文菜单中选择删除。
更多文章……
最佳办公效率工具
| 🤖 | KUTOOLS AI 助手:基于以下内容革新数据分析:智能执行 | 生成代码| 创建自定义公式 | 数据分析及生成图表| 调用 Kutools Functions…… |
| 热门功能:查找、高亮或标记重复项 | 删除空白行 | 合并列或单元格且不丢失数据 | 不使用公式的四舍五入…… | |
| 高级 LOOKUP:多条件 VLookup | 多值 VLookup | 跨多工作表 VLookup | 模糊查找…… | |
| 高级下拉列表:快速创建下拉列表 | 级联下拉列表 | 多选下拉列表…… | |
| 列管理器:添加指定数量的列|移动列|切换隐藏列的可见性状态|比较区域与列…… | |
| 特色功能:网格聚焦 | 设计视图 |增强编辑栏 | 工作簿和表管理器 | 资源库(自动文本)| 日期提取 | 汇总工作表 | 加密/解密单元格 | 按列表发送邮件 | 超级筛选 | 特殊筛选(筛选粗体单元格/斜体/删除线……) ...... | |
| 精选 15 工具集:12 文本工具(添加文本,删除特定字符,……)| 50+ 图表 类型(甘特图,……)| 40+ 实用公式(基于生日计算年龄,……)| 19 插入工具(插入二维码,从路径插入图片,……)| 12 转换工具(小写金额转大写,汇率转换,……)| 7 合并和拆分工具(高级合并行,分割单元格,……)|……更多 |
使用 Kutools for Excel 大幅提升您的 Excel 技能,体验前所未有的高效。Kutools for Excel 提供 300 多项高级功能,助您提升生产力、节省时间。立即点击此处,获取您最需要的功能……
Office Tab 为 Office 带来标签式界面,让您的工作更轻松
- 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑和阅读。
- 在同一个窗口的新标签页中打开并创建多个文档,而非在新窗口中。
- 将您的工作效率提升 50%,每天减少数百次鼠标点击!
所有 Kutools 插件,一个安装程序
Kutools for Office 套件捆绑了适用于 Excel、Word、Outlook 和 PowerPoint 的插件以及 Office Tab Pro,非常适合需要跨多个 Office 应用高效协作的团队。
- 一体化套件— Excel、Word、Outlook 和 PowerPoint 插件 + Office Tab Pro
- 一个安装程序,一个许可证— 几分钟内完成设置(支持 MSI)
- 协同效果更佳— 在多个 Office 应用中实现高效协同
- 30 天全功能试用— 无需注册,无需信用卡
- 超值之选— 比单独购买插件更省钱