跳至主要内容

Kutools for Office — 一套工具,五种功能。事半功倍。

如何在Excel中删除重复项但保留其余行的值?

Author Sun Last modified

在日常数据处理中,Excel 的“删除重复项”功能通常会删除整行,这可能会破坏其他列的数据和整个工作表的结构。本文介绍了几种仅清除指定列中的重复值的方法——同时保留每行其余数据——包括使用公式与筛选器、VBA代码以及Kutools插件。每个解决方案都附有典型用例、优点和注意事项,以帮助您快速选择最适合您需求的方法。

remove duplicates keep rest-sample1  remove duplicates keep rest-sample2

使用筛选器删除重复项但保留其余行值(3个步骤)

使用VBA删除重复项但保留其余行值(4个步骤)

使用Kutools for Excel删除重复项但保留其余行值(2个步骤)good idea3


使用筛选器删除重复项但保留其余行值

一种在清除重复值的同时保持数据结构完整性的可靠方法是将简单公式与Excel的筛选功能结合使用。此方法特别适用于希望从单列中直观识别并有选择性地删除重复项的情况,从而确保每行其他信息不受影响。该技术适用于中小型数据集,并为用户提供对删除过程的完全控制。

1. 选择数据范围旁边的一个空白单元格(例如,如果您的数据从A2开始,则选择D2),然后输入公式: =A3=A2。该公式将每个单元格与其上方的单元格进行比较,以标记重复项。向下拖动填充柄以根据需要将公式应用到其余行。请参见截图:
enter a formula and drag it to fill other cells

2. 接下来,选择整个数据范围——包括新添加的公式列——然后点击 数据 > 筛选 以激活筛选功能。这样您可以过滤掉那些被标记为重复的行。
click Data > Filter to enable Filter feature

3. 点击 筛选图标 在公式列中(例如,D列),从下拉列表中仅选择 TRUE。所有重复条目(除了最后一次出现)都会显示出来。
check TURE from the drop down list

4. 点击 确定后,所有已识别的重复值都将显示出来。选择这些重复单元格并按 删除 键清除它们,而不会影响其行中的其他单元格。这将在仅从指定列中删除重复值的同时保留行数据结构。请参阅下面的截图:
select all of the duplicate values, press Delete key to remove them

提示:请谨慎选择仅重复单元格——而不是整行——以便仅移除目标值。

5. 要恢复正常视图,请再次点击 数据 > 筛选 以禁用筛选。如果不再需要辅助公式列,请将其删除或清除。现在,指定列中的重复项已被清除,所有其他行值保持不变。
Click Data > Filter to disable Filter

优点: 无需VBA或插件;步骤清晰且手动错误易于纠正。
缺点: 并非完全自动化——涉及手动清理;对于非常大的数据集效率较低。


使用VBA删除重复项但保留其余行值

VBA提供了一种更自动化的从列中删除重复项的方法,同时保持同一行中所有其他数据不受影响。这种方法非常适合处理重复的清理任务,尤其是在处理大量数据或需要经常重复删除程序时。使用VBA可以最大限度地减少手动错误并节省时间,但它最适合熟悉Excel基本脚本操作的用户。

1. 按 Alt + F11 打开 Microsoft Visual Basic for Applications 编辑器窗口。

2. 在VBA窗口中,转到 插入 > 模块,然后将以下代码复制并粘贴到新模块中。此代码从选定范围内删除重复值,但保留行中所有其他信息:

VBA:删除重复项但保留其余行值

Sub RemoveDuplicates()
'UpdatebyExtendoffice20160918

    Dim xRow As Long
    Dim xCol As Long
    Dim xrg As Range
    Dim xl As Long
    On Error Resume Next
    Set xrg = Application.InputBox("Select a range:", "Kutools for Excel", _
                                    ActiveWindow.RangeSelection.AddressLocal, , , , , 8)

    xRow = xrg.Rows.Count + xrg.Row - 1
    xCol = xrg.Column
    'MsgBox xRow & ":" & xCol
    Application.ScreenUpdating = False
    For xl = xRow To 2 Step -1
        If Cells(xl, xCol) = Cells(xl - 1, xCol) Then
            Cells(xl, xCol) = ""
        End If
    Next xl
    Application.ScreenUpdating = True
    
End Sub

copy and paste the code into the module

3. 要运行脚本,请按 F5 或点击 运行 按钮。一个对话框窗口将提示您选择要删除重复值的范围。然后点击 确定 确认。
vba code to select a range to remove duplicate values from

4. 宏将执行并在指定范围内删除重复值,在其位置留下空白单元格,同时保留所有其他行内容。这有效地保留了您的工作表结构。
the duplicate values have been removed from selection

优点: 对于较大或重复的数据集非常高效;减少了手动工作量。
缺点: 需要启用宏并对VBA有基本了解;编辑通常是不可逆的,因此建议在备份副本上操作。


使用Kutools for Excel删除重复项但保留其余行值

如果您安装了 Kutools for Excel,您可以简化从范围或列中删除重复项的过程,同时保留其余行数据。Kutools 提供了直观且高效的功能来处理重复数据,这对经常需要整理 Excel 数据列表的用户尤其有用。

Kutools for Excel 提供了超过 300 种高级功能,简化复杂任务,提升创造力与效率。 通过集成 AI 能力,Kutools 能够精准自动执行任务,让数据管理变得轻松简单。Kutools for Excel 的详细信息...         免费试用...

安装 Kutools for Excel 后,您可以根据数据和偏好使用以下两种方法之一:

方法一:合并相同单元格(2个步骤)

1. 高亮显示您希望去重的重复值。然后,导航至 Kutools > 合并与分割 > 合并相同单元格。这将把连续的重复值合并到一个单元格中,便于清除除第一个实例之外的所有内容。
click Merge Same Cells feature of kutools

2. 合并后,选择合并的单元格,转到 开始 > 合并与居中 > 取消合并单元格 将其恢复为标准单元格。重复项现在将显示为空白单元格,每个组仅保留唯一值。
click Home > Merge & Center > Unmerge Cells to split them

结果将类似于下面的示例,其中重复项已被删除并且其余行值得以保留:
get the result

 

方法二:选择重复项和唯一单元格(4个步骤)

1. 选择您要从中删除重复值的整个列表或范围。点击 Kutools > 选择 > 选择重复项和唯一单元格.
click Select Duplicate & Unique Cells feature of kutools

2. 在 选择重复项和唯一单元格 对话框中,选择 重复项(除第一次外)规则 部分。这将高亮显示第一次出现后的所有重复实例。
check Duplicates (Except1st one) option in the Rule section

3. 点击 确定。将弹出提示通知您已选择多少个重复单元格。通过另一个 确定.
a dialog pops out to remind you how many duplicates have been selected

4. 只需按 Delete 键即可删除这些选定的重复值,同时不会影响其余行数据。

press Delete key to remove the selected duplicate values

优点: 无需公式或编码;非常快捷且用户友好;支持批量操作。
缺点: 需要额外安装。


总结与故障排除:上述每个解决方案都提供了在Excel中删除重复值的同时保留其余行数据的有效方法。筛选器与公式方法适合透明、分步的手动处理;VBA适用于批处理或重复清理;而Kutools为常规用户提供了便捷、简化的操作。始终仔细检查所选范围,在批处理操作前备份文件,并选择与您的工作流程及公式或代码熟练度相匹配的解决方案。如果您遇到遗漏重复项或意外数据丢失的问题,请检查辅助列是否准确,验证排序,并在删除前确认您的选择正确无误。

最佳Office办公效率工具

🤖 Kutools AI 助手:以智能执行为基础,彻底革新数据分析 |代码生成 |自定义公式创建|数据分析与图表生成 |调用Kutools函数……
热门功能:查找、选中项的背景色或标记重复项 | 删除空行 | 合并列或单元格且不丢失数据 | 四舍五入……
高级LOOKUP多条件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中进行多标签编辑与阅读
  • 在同一个窗口的新标签页中打开和创建多个文档,而不是分多个窗口。
  • 可提升50%的工作效率,每天为您减少数百次鼠标点击!

所有Kutools加载项,一键安装

Kutools for Office套件包含Excel、Word、Outlook和PowerPoint的插件,以及Office Tab Pro,非常适合跨Office应用团队使用。

Excel Word Outlook Tabs PowerPoint
  • 全能套装——Excel、Word、Outlook和PowerPoint插件+Office Tab Pro
  • 单一安装包、单一授权——数分钟即可完成设置(支持MSI)
  • 协同更高效——提升Office应用间的整体工作效率
  • 30天全功能试用——无需注册,无需信用卡
  • 超高性价比——比单独购买更实惠