KutoolsforOffice — 一套方案,五大工具。事半功倍。

如何在 Excel 中根据单列中的重复项删除整行?

作者Kelly修改日期

在 Excel 中,使用数据选项卡上的删除重复根据某一列的重复值删除整行,看似简单,实则操作并不总是直观。本文将为您介绍几种简单高效的方法,轻松应对这一常见场景,确保数据既准确又简洁! 在制作报表、进行数据分析,或需要按特定标准仅保留唯一记录时,基于单列重复项删除整行至关重要。以下方法涵盖 Excel 内置功能、公式、VBA 选项,以及 Kutools for Excel 智能解决方案,助您根据自身需求与工作流程,灵活选择最合适的方式!每种方法均针对任务复杂度、数据量及您对 Excel 工具的熟练程度,提供独特优势,让去重更高效、更精准!


使用删除重复功能,基于单列中的重复项删除行

此方法侧重于利用 Excel 的删除重复功能,轻松删除包含重复项的整行,是最快捷的解决方案之一,尤其适用于数据已整理好、且仅需保留每个重复值一个实例的场景。

  1. 选择要基于单列中重复项删除行的区域,然后点击数据> 删除重复
  2. 在弹出的删除重复对话框中,仅勾选您希望用作整行删除依据的重复值所在列旁的复选框,然后单击确定按钮。注意:请仔细核对所选列——只有勾选的列会参与重复项判断。若误选其他列,可能导致无法删除所有预期的重复项。
  3. 操作完成后,系统将弹出对话框,显示已找到并删除的重复值数量。单击确定即可关闭对话框。该提示信息会清晰反馈已删除的重复行数量及剩余的唯一行数,供您参考。

优点适用于简单任务,无需加载项或公式,且保留每个重复项的首次出现。
缺点会删除整行数据,无法在删除前预览已标记的重复项。


基于单列中的重复项使用删除行 Kutools for Excel

Kutools for Excel选择重复/唯一单元格工具,不仅能基于某一列中的重复值智能删除整行,还能保留含唯一值的行。更灵活的是,您可以自由选择:是仅保留首次出现的重复项并删除其余重复行,还是将所有重复项(包括首次出现)一并清除。相比 Excel 内置功能,此方法为需要精细掌控重复数据处理的用户提供了更强大的解决方案。

Kutools for Excel 提供 300 多项高级功能,简化复杂任务,提升创造力与效率。集成 AI 能力,Kutools 精准自动化任务,让数据管理变得轻松自如。Kutools for Excel 的详细信息……         免费试用……
  1. 选择包含您要用作删除依据的重复值所在的列,然后单击 Kutools > 选择 > 选择重复/唯一单元格提示:建议仅选择需要检查重复项的列,以免误删无关数据。
  2. 在打开的选择重复/唯一单元格对话框中,请在重复项(除首个外)选项或所有重复项(包括首个)选项中按需选择,该选项位于规则部分。然后勾选选择整行选项,并单击确定按钮。

    参数说明:
    重复项(除首个外):保留首次出现的项,其余所有重复行将被选中以供删除。
    所有重复项(包括首个):选中该列中所有包含重复值的行,包括首次出现的项。

  3. 如下所示的对话框将显示基于所选列中重复值所选中的行数。单击确定按钮即可关闭。
  4. 单击开始 > 删除 > 删除工作表行,即可删除包含重复值的选定行。至此,您已根据指定列中的重复值成功删除所有相关行。通过 Excel 中“开始”>“删除工作表行”选项删除所选行的截图提示:建议在删除前备份文件。一旦执行重大后续操作或保存/关闭文件,被删除的行将无法通过撤销功能恢复。

原始数据:
在 Excel 中删除重复行之前原始数据集的截图

删除重复项后的结果:

  • 如果选择重复项(除首个外)选项:
    在 Excel 中保留首次出现项并删除其余重复项后的结果

  • 如果选择所有重复项(包括首个)选项:
    在 Excel 中包括首次出现项在内全部删除重复项后的结果

优点:可灵活选择与预览,支持删除全部或部分重复项,完全掌握控制权。
缺点:需安装软件。


使用 VBA 代码基于列中的重复项进行删除行

此方法通过 VBA 宏自动遍历您的选择数据区域,并在指定指定列中发现重复值时删除相应整行。该方案特别适用于处理大型数据集或重复性清理任务,比手动操作自动化程度更高。运行 VBA 代码前,请务必备份工作簿,因为宏执行的更改无法轻松撤销。

  1. 单击开发工具选项卡中的 Visual Basic,即可打开 Microsoft Visual Basic for Applications 编辑器窗口。如果您未看到开发工具选项卡,可通过文件> 选项> 自定义功能区 启用它。
  2. 在 VBA 编辑器中,单击插入> 模块 以创建新代码模块,然后将以下代码粘贴到模块窗口中:
Sub DeleteRowsWithDuplicateInColumn()
    Dim rng As Range
    Dim i As Long, j As Long
    Dim lastRow As Long
    Dim colNum As Long
    Dim ws As Worksheet
    Dim dict As Object
    On Error Resume Next
    Set ws = ActiveSheet
    Set rng = Application.InputBox("Select your data range (including column headers)", "KutoolsforExcel", ws.UsedRange.Address, Type:=8)
    If rng Is Nothing Then Exit Sub
    colNum = Application.InputBox("Enter the column number to check for duplicates (e.g.,2 for column B):", "KutoolsforExcel", 1, Type:=1)
    Set dict = CreateObject("Scripting.Dictionary")
    lastRow = rng.Rows.Count
    For i = lastRow To 2 Step -1
        If dict.Exists(rng.Cells(i, colNum).Value) Then
            rng.Rows(i).EntireRow.Delete
        Else
            dict.Add rng.Cells(i, colNum).Value, 1
        End If
    Next i
End Sub

3. 输入代码后,点击运行按钮按钮以执行代码。当系统提示时,请选择包含标题的数据区域,然后输入要检查重复项的列号(例如,输入)2 表示 B 列)。

宏将自动从下至上遍历数据,删除指定列中重复值所在的行,仅保留每个唯一值的首次出现。

注意事项运行宏之前,请务必备份工作表,以防不可逆的数据丢失。

使用 Excel 公式和辅助列识别并删除行重复项

如果您偏好基于公式的解决方案,可使用辅助列标记重复值,然后手动删除已标记的行。此方法适合希望在删除前直观查看哪些行为重复项的场景,透明度更高,但部分步骤需手动完成。

1. 在数据表中添加一个新辅助列(例如 D 列),并在数据旁的空白单元格(如 D2)中输入以下公式:

=COUNTIF($A$2:$A2,A2)>1

2. 将此公式向下填充至辅助列的所有相关行。TRUE 表示重复项,FALSE 表示首次出现。

3. 对包含辅助列的数据区域应用筛选功能,然后在辅助列中筛选 TRUE 值——这些即为首次出现之后的重复行。

4. 选中筛选出的行,依次点击开始> 删除> 删除工作表行,即可将其从表格中移除。完成后,可根据需要删除或隐藏辅助列。

5. 删除重复行后,点击筛选即可取消筛选,显示隐藏的数据。

标记所有重复值,包括其首次出现的项:在辅助列中使用此公式:

=COUNTIF($A$2:$A$24,A2)>1

向下填充后,限定区域中所有重复出现的记录将返回 TRUE,无论其位置如何。按上述方法筛选并删除,即可移除所有包含重复值的行,仅保留唯一项。

优点:无需加载项或宏,删除前可直观检查。
缺点:删除步骤需手动操作,处理超大数据集时效率较低。

基于单列中的重复项进行删除行,并对已删除行中的值进行合并/求和/平均值/计数

如果您希望基于指定列中的重复值删除整行,同时保留这些重复项中的数据,请尝试使用 Kutools for Excel高级合并行工具。该工具可高效删除选定列中包含重复项的行,并同步对其他列中被删除行的数据执行合并、求和、平均值或计数等操作,确保数据集的完整性与实用性。此方法特别适用于业务流程中需在去重后聚合关联数据的场景,例如整合销售记录或交易日志。

Kutools for Excel 提供 300 多项高级功能,简化复杂任务,提升创造力与效率。集成 AI 能力,Kutools 精准自动化任务,让数据管理变得轻松自如。Kutools for Excel 的详细信息……         免费试用……
  1. 选择要基于单列中的重复项删除行的区域,然后单击 Kutools > 合并和拆分 > 高级合并行
  2. 在打开的高级合并行对话框中,以基于“Fruit”列中的重复值执行删除操作为例。此外,还将合并“Price”列中的价格信息,并对“Amount”列中每种水果的总量进行求和。请按以下步骤操作:
    1. 在对话框的列数据部分中,定位并选择包含您要基于其删除重复行的“Fruit”列,然后从主键下拉列表中选择操作
    2. 选择“Price”列,我们将合并与指定列中重复项关联的所有值。然后从合并部分的操作下拉列表中选择分隔符。
    3. 选择“Amount”列,即可基于该列中的重复项对数值执行计算(如求和、平均值、计数等)。然后点击计算组中的操作下拉列表,从中选择求和选项。
     
  3. 单击确定按钮,即可立即删除指定列中的重复行,并同步完成其他列数据的合并或计算。

演示:在 Excel 中基于单列重复项进行删除行

 
Kutools for Excel:超过 300 款实用工具触手可及!畅享 AI 驱动的功能,让工作更智能、更高效!立即下载!

相关文章:

在 Excel 中统计列中的重复值

在 Excel 中删除重复行并仅保留最高值

在 Excel 中隐藏重复行

最佳办公效率工具

🤖KUTOOLS AI 助手:基于以下内容革新数据分析:智能执行   |  生成代码|  创建自定义公式  |  数据分析及生成图表|  调用 Kutools Functions……
热门功能查找、高亮或标记重复项   |  删除空白行   |  合并列或单元格且不丢失数据   |  不使用公式的四舍五入……
高级 LOOKUP多条件 VLookup  |  多值 VLookup  |   跨多工作表 VLookup   |   模糊查找……
高级下拉列表快速创建下拉列表   |  级联下拉列表   |  多选下拉列表……
列管理器添加指定数量的列|移动列|切换隐藏列的可见性状态|比较区域与列……
特色功能网格聚焦   |  设计视图   |增强编辑栏   | 工作簿和表管理器   |  资源库(自动文本)|  日期提取   |  汇总工作表  |  加密/解密单元格   | 按列表发送邮件   |  超级筛选   |   特殊筛选(筛选粗体单元格/斜体/删除线……) ......
精选 15 工具集12 文本工具添加文本删除特定字符,……)|   50+ 图表 类型甘特图,……)|   40+ 实用公式基于生日计算年龄,……)|   19 插入工具插入二维码从路径插入图片,……)|   12 转换工具小写金额转大写汇率转换,……)|   7 合并和拆分工具高级合并行分割单元格,……)|……更多
在您的首选语言中使用 Kutools – 支持英语、西班牙语、德语、法语、中文及 40+ 种其他语言!

使用 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 应用高效协作的团队。

ExcelWordOutlookTabsPowerPoint
  • 一体化套件— Excel、Word、Outlook 和 PowerPoint 插件 + Office Tab Pro
  • 一个安装程序,一个许可证— 几分钟内完成设置(支持 MSI)
  • 协同效果更佳— 在多个 Office 应用中实现高效协同
  • 30 天全功能试用— 无需注册,无需信用卡
  • 超值之选— 比单独购买插件更省钱