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

如何在 Excel 中删除重复项,同时保留空白行?

作者修改日期

在 Excel 中,删除重复项功能提供了一种便捷方式,可从列表中清除重复值。然而,当您的列表包含空白行时,常会遇到一个棘手问题:标准功能会一并删除这些空白行,通过填补空隙破坏原始数据结构。若这些空白行用作逻辑分隔符或格式用途,这种情况往往会带来麻烦。

如果您希望删除重复项,同时完全保留所有空白行不变,这里有几种高效方法。这些方案能在不影响空白行的前提下清理列表,助您实现更专业的数据管理,并维持工作表的视觉结构。以下针对不同场景,为您介绍在 Excel 中达成此目标的多种解决方案。
显示 Excel 中包含重复项和空白行的数据的截图

删除重复使用公式和删除重复保留空白行

使用选择重复/唯一单元格的选择并高亮重复项good idea3

VBA 宏:自动删除重复但保留空白行

Excel 公式/高级筛选:提取唯一值同时保留空白行


删除重复使用公式和删除重复保留空白行

要删除重复项并保留空白行,可先借助辅助列识别并标记空白行,再使用 Excel 内置的“删除重复项”功能。这种组合方法既能确保保留唯一值,又不会影响任何现有的空白行。如果您倾向于采用以手动操作为主、集成度高的 Excel 工作流,并希望保留可见的辅助列,此方案尤为适用。

步骤 1. 在相邻列中(例如,若数据从 A1 开始,则从 B1 开始),输入以下公式以标记空白行:

=IF(LEN(TRIM(A1))=0,ROW(),"")

此公式用于检测 A1 单元格是否为空或仅包含空格:若满足条件,则显示当前行号;否则留空。将公式向下拖动至列表中所有条目旁,即可自动标记每个空白行。
用于识别 Excel 中空白行的公式的截图

注意:如果您的数据跨越多列,请根据需要调整引用(例如使用 )A1B1)。使用 TRIM 可确保仅含空格的单元格也被视为空白。

步骤 2. 选择原始数据列和新的辅助列,然后转到数据> 删除重复。在弹出的对话框中,仅勾选原始列(而非辅助列)的复选框,即可基于目标数据识别重复项。
“删除重复项”对话框的截图
“删除重复项”对话框的截图

提示:请确保所选数据包含辅助列,但仅将原始数据列设为删除重复项的“关键”列,以免误删由辅助列标记的空白行。

步骤 3. 将弹出通知,显示已删除的重复值数量。单击确定即可确认并关闭提示。
Excel 中“删除重复项”通知对话框的截图

此时,列表将显示所有唯一值以及原有的空白行。如不再需要,可删除辅助列。
删除重复项但保留空白行后的 Excel 工作表截图

适用场景:当您希望仅使用标准 Excel 函数且数据较为简单时,推荐此方法。若数据频繁更新,此方法并非全自动,需重复执行操作步骤。此外,删除重复项前务必备份数据——文件保存并关闭后,该操作将无法撤销!

故障排除:如果空白行仍被删除,请仔细检查辅助公式是否已正确标记所有空白行,并确认在对话框中仅将主列设为“删除重复”键。


使用选择重复/唯一单元格的选择并高亮重复项

Kutools for Excel选择重复/唯一单元格工具特别适用于在删除前直观识别重复项,且默认保留空白行。如果您希望在删除前手动审核重复项,或仅需高亮显示以便进一步处理,此解决方案非常出色。

Kutools for Excel 提供 300 多项高级功能,简化复杂任务,提升创造力与效率。集成 AI 能力,Kutools 精准自动化任务,让数据管理变得轻松自如。Kutools for Excel 的详细信息……         免费试用……

1. 选择包含数据的区域(包括空白行),然后点击 Kutools > 选择 > 选择重复/唯一单元格
Excel 中 Kutools“选择重复和唯一单元格”菜单的截图

2. 选择重复/唯一单元格对话框中,于“规则”下选择重复项(除首个外)。您还可勾选填充背景颜色填充字体颜色复选框,即可自动以自选颜色高亮重复项。
“选择重复和唯一单元格”对话框的截图

提示:若要选择整行重复数据,请选中完整的数据区域(而非仅单列),并相应地应用该工具。

3. 单击确定,将弹出对话框,报告已找到并选中的重复单元格或行数。单击确定即可关闭。
在 Kutools for Excel 中选择重复行后的通知对话框截图

现在,列表中的重复项已被高亮显示,便于您按需手动删除,且不会影响任何空白行。
使用 Kutools 在 Excel 中高亮显示的重复单元格截图

优势:更灵活、无风险,支持删除前审核;空白行默认不受影响。当您需要更强的视觉控制,或需逐项处理重复内容时,此方法尤为实用。

注意:如需批量删除重复项,可对高亮行区域进行排序或筛选,同时保留原始工作表的视觉结构。

Kutools for Excel——通过 300 多款必备工具全面增强 Excel 功能,助您工作更快速、更轻松,并借助 AI 功能实现更智能的数据处理与高效办公!立即获取

演示:使用 Kutools for Excel 的选择重复/唯一单元格

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

VBA 宏:自动删除重复但保留空白行

对于需要频繁自动删除重复项、同时保留所有空白行的用户来说,使用 VBA 宏是一种高效实用的选择。借助宏,无论列表如何变化,您都能一键完成数据清理,且无需依赖辅助列。如果您的工作表结构保持一致,并希望获得一种可重复执行、兼顾性能与准确性的解决方案,此方法尤为理想。

注意:运行任何宏之前,请务必保存工作表的副本,因为操作一旦执行将难以撤销。

1. 转到开发工具 > Visual Basic。在 VBA 编辑器中,单击插入 > 模块,然后将下方代码粘贴到新模块窗口中:

Sub RemoveDuplicatesKeepBlankRows()
    Dim ws As Worksheet
    Dim lastRow As Long
    Dim dict As Object
    Dim cell As Range
    Dim checkRange As Range
    Dim i As Long
    
    Set ws = ActiveSheet
    Set dict = CreateObject("Scripting.Dictionary")
    
    lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
    Set checkRange = ws.Range("A1:A" & lastRow)
    
    Application.ScreenUpdating = False
    
    For i = lastRow To 1 Step -1
        Set cell = ws.Cells(i, 1)
        
        If Trim(cell.Value) = "" Then
            ' Blank row, do nothing and keep row
        Else
            If dict.Exists(cell.Value) Then
                cell.EntireRow.Delete
            Else
                dict.Add cell.Value, True
            End If
        End If
    Next i
    
    Application.ScreenUpdating = True
End Sub

2. 要运行代码,请单击运行按钮按钮,或在选中模块时按 F5. 宏将立即扫描第一列(A 列),删除重复值,同时保留所有原有空白行于原始位置。

工作原理:宏从指定列的底部向上遍历,自动识别最后一个非空单元格,智能适应不同长度的列表,在删除重复值的同时完整保留所有空白行。

参数与提示:

  • 如果您的数据位于其他列,请将 Cells(i,1) 中的列号更改为对应值(例如,B 列为 2,C 列为 3)。
  • 该宏从第最后一行行向上运行,防止行移位干扰删除过程。
  • 任何仅包含空格的单元格也会被视为空白。如果您只想识别真正的空单元格,请将 Trim(cell.Value) = ""替换为 cell.Value = ""

故障排除:如果宏未按预期运行,请检查目标列中是否存在合并单元格、隐藏行或意外的数据类型。

最适合:重复性清理操作、处理大型数据集,或在自动化工作流中运行宏的场景。


Excel 公式/高级筛选:提取唯一值同时保留空白行

如果您希望从原始数据中提取唯一值列表,同时保留空白行在原始位置,可以使用带条件公式的高级筛选,或巧妙运用 Excel 公式构建全新列表。当您需要为报表或进一步分析创建一个独立的去重列表,并完整保留包含空行在内的原始布局时,这种方法尤为实用。

您可使用以下公式构建唯一值列表,同时保留空白行在原始位置。以下是更简便的方法:

1. 在新列中(例如 B1)使用以下公式(假设您的原始数据位于 A1:A100):

=IF(TRIM(A1)="","",IF(COUNTIF(A$1:A1,A1)=1,A1,""))

2. 将此公式向下拖动至所有数据行。唯一项将保留在其原始位置,重复项的后续出现将显示为空白,而原本空白的行也将保持空白。

注意事项:请确保数据中不含隐藏值或前导/尾随空格,以免影响唯一性判断。TRIM 函数可有效防范此类问题。对于旧版 Excel,可能需要调整处理方法,或借助辅助列配合手动筛选。

适用场景:创建新报表、并排对比数据列表,或为后续处理准备好已清理的数据。此方法同样适合希望仅使用公式、无需 VBA 或插件的用户。


最佳办公效率工具

🤖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 天全功能试用— 无需注册,无需信用卡
  • 超值之选— 比单独购买插件更省钱