跳至主要内容

根据单元格值删除 Excel 中的行 – 简单教程

Author: Xiaoyang Last Modified: 2025-05-07

无论您处理的是小型电子表格还是大型数据集,了解如何根据单元格值删除行都可以节省您的时间和精力。此过程可以使用多种 Excel 功能来完成,包括筛选功能、查找和替换工具、排序功能,甚至使用高级技术。在本指南结束时,您将掌握有效从 Excel 表中删除不需要的行的知识,确保您的数据干净且与分析需求相关。

例如,如果我想删除名称列包含 Jener 的所有行,该如何操作?

 Remove rows based on cell value

根据单元格值删除整行

通过使用排序功能基于单元格值删除选中的行


根据单元格值删除 Excel 中的整行

Excel 提供了多种方法来根据特定单元格值删除行。本节涵盖了从简单的 Excel 功能(如筛选、查找和替换以及 Kutools)到涉及 VBA 的更高级技术的方法。无论您是初学者还是高级用户,您都会找到适合您技能水平和需求的方法。

📝 注意:以下删除行的方法将删除该行内的所有数据,包括该行其他单元格中的内容。为防止数据丢失,请考虑在删除之前将数据集复制到另一个工作表上。

通过使用筛选功能根据单元格值删除整行

通常,您可以应用筛选功能显示符合特定条件的行,然后一次性删除这些行。

步骤 1:应用筛选功能筛选不需要的行

  1. 选择要删除行的数据区域。然后,点击“数据”>“筛选”,见截图:
     click Data > Filter
  2. 现在,每列的标题中会出现下拉箭头。点击包含您希望删除行的值的列的下拉箭头。例如,如果您想删除包含名字 Jener 的行,则应点击“姓名”列中的箭头。
  3. 在下拉菜单中,取消勾选“全选”以清除所有选择,仅勾选 Jener 旁边的框,或者在搜索框中手动输入 Jener 以快速找到它。
    check only the value to filter out
  4. 然后,点击“确定”按钮以应用筛选。只有包含 Jener 的行会被显示出来。见截图:
    only the rows that contain the specific value are displayed

步骤 2:删除筛选出的行

选择可见的行,然后右键单击其中一个选定的行,并从上下文菜单中选择“删除行”。这将删除所有选定的行。
 right-click on one of the selected rows and choose Delete Row

步骤 3:清除筛选

然后,再次点击“数据”>“筛选”。这将移除筛选器,您将看到除已删除行之外的所有记录。
click on the Data > Filter again to clear the filter

💡 提示:
  • 类似于如何应用筛选方法消除包含文本 Jener 的行,您也可以利用它根据数值或日期条件删除行,如下图所示:
    数字筛选条件:
    Number filter conditions in Filter function

    日期筛选条件:
     Date filter conditions in Filter function
  • 您还可以使用筛选功能筛选并删除所有包含特定背景色的行。见截图:
    filter and delete all rows that contain certain background color
  • 您可以使用筛选功能根据多个条件进行筛选,以过滤掉不需要的内容,然后删除它。例如,假设您想删除销售人员为 Jener 且总销售额大于 7000 美元的所有行。您应该首先按名字 Jener 筛选行,然后筛选销售额大于 7000 的行。
 

通过使用 Kutools AI 助手根据单元格值删除整行

Kutools for Excel 是一个全面的加载项,包含 300 多个高级功能,旨在简化 Excel 中各种复杂的任务。其功能之一,Kutools AI 助手,可帮助自动执行诸如根据特定条件筛选和删除行等任务。

📝 注意:要使用 Kutools for Excel 的 Kutools AI 助手,请下载并安装 Kutools for Excel

安装 Kutools for Excel 后,请点击“Kutools AI”>“AI 助手”以打开“Kutools AI 助手”窗格:

  1. 选择数据范围,然后在聊天框中输入您的要求,并点击“发送”按钮或按 Enter 键发送问题;“如果名称列包含选中范围内的名字 Jener,则删除行”
  2. 分析完成后,点击“执行”按钮运行。Kutools AI 助手将使用 AI 处理您的请求,并直接在 Excel 中删除指定的行。
💡 提示:
  • 要根据多个条件删除行,只需相应调整要求即可。例如,使用命令“在选中范围内删除名称列包含 Jener 或 Kevin 的行”或“在选中范围内删除名称列包含 Jener 且总销售额超过 7000 的行”。
  • 此方法不支持撤销功能。但是,如果您希望恢复原始数据,可以点击“不符合预期”以还原更改。
Kutools for Excel 提供了超过 300 种高级功能,简化复杂任务,提升创造力与效率。 通过集成 AI 能力,Kutools 能够精准自动执行任务,让数据管理变得轻松简单。Kutools for Excel 的详细信息...         免费试用...
 

通过使用查找和替换功能根据单元格值删除整行

使用 Excel 的查找和替换功能根据特定单元格值删除整行是一种简单直接的方法,对于清理数据非常有效。请按照以下步骤操作:

步骤 1:应用查找和替换功能选择特定值

  1. 选择您将根据某些单元格值删除行的列数据,然后通过同时按下 Ctrl + F 键打开“查找和替换”对话框。
  2. 在“查找和替换”对话框中,请在“查找内容”框中输入特定单元格值(在我们的例子中,我们输入 Jener),然后点击“查找全部”按钮。见截图:
    type the certain cell value in the find what box
  3. 在“查找和替换”对话框底部选择所有搜索结果,然后关闭此对话框。(您可以选择一个搜索结果,然后使用 Ctrl + A 键选择所有找到的结果。)所有包含特定值的单元格都被选中。然后,关闭此对话框。见截图:
     press Ctrl + A keys to select all found results

步骤 2:根据选定值删除行

  1. 在仍然选中单元格的情况下,右键单击其中一个选定的单元格,并从上下文菜单中选择“删除”。
  2. 在“删除”对话框中选择“整行”,然后点击“确定”以删除包含指定值的所有行。
     delete the Rows based on the selected value
 

通过使用 VBA 代码根据单元格值删除整行

使用 VBA(Visual Basic for Applications)在 Excel 中根据单元格值删除行可以实现任务自动化,尤其适用于大型数据集时效率更高。

步骤 1:打开 VBA 模块编辑器并复制代码

  1. 按 Alt + F11 键打开“Microsoft Visual Basic for Applications”窗口。
  2. 在打开的窗口中,点击“插入”>“模块”以创建一个新的空白模块。
  3. 然后,将以下代码复制并粘贴到空白模块中。
    Sub DeleteRowsBasedOnCellValue()
    'Updateby Extendoffice
        Dim ws As Worksheet
        Set ws = ActiveSheet
        Dim columnRange As Range
        On Error Resume Next
        Set columnRange = Application.InputBox("Select the column range to check:", "Kutools for Excel", Type:=8)
        On Error GoTo 0
        If columnRange Is Nothing Then Exit Sub
        Dim lastRow As Long
        lastRow = ws.Cells(ws.Rows.Count, columnRange.Column).End(xlUp).Row
        Dim criteria As String
        criteria = Application.InputBox("Enter the value to delete rows for:", "Kutools for Excel", Type:=2)
        If criteria = "" Then Exit Sub
        Dim i As Long
        For i = lastRow To 1 Step -1
            If ws.Cells(i, columnRange.Column).Value = criteria Then
                ws.Rows(i).Delete
            End If
        Next i
    End Sub
    

步骤 2:执行代码

  1. 然后按 F5 键运行代码。在弹出的对话框中,请选择您将根据特定值删除行的列,并点击“确定”按钮。
     select the column to remove rows based on the certain value
  2. 在接下来的对话框中,请输入您将根据其删除行的特定值,并点击“确定”按钮。见截图:
     type the certain value to remove rows based on

结果:

然后您会看到基于指定值的整行已经被删除。

📝 注意:此 VBA 代码方法不支持撤销,因此在使用前请确保操作按预期执行。此外,建议备份您的数据以防止意外更改或丢失。

通过使用排序功能基于单元格值删除选中的行

上述所有方法都删除整行,这可能是一个限制。例如,使用这些方法会消除数据集右侧的所有数据。假设您希望仅删除数据集中的某些记录,同时保留其余数据。在这种情况下,需要一种替代方法。

步骤 1:为数据创建辅助列

创建一个新列,它将帮助我们跟踪顺序。您需要在数据旁边插入一列,然后用序列号 1、2、3… 填充它。见截图:
Create a serial numbers helper column for the data

步骤 2:根据特定列对数据进行排序

  1. 选择您希望基于其删除行的数据列。然后,点击“数据”>“升序或降序排序”,弹出“排序警告”对话框,选择“扩展选定区域”,然后点击“排序”按钮。见截图:
     select Expand the selection in the dialog box
  2. 现在,具有相同值的行将被分组在一起,便于识别和选择它们。见截图:
     rows with the same values will be grouped together

步骤 3:删除排序后的行

  1. 选择您希望删除的记录组,然后右键单击,选择上下文菜单中的“删除”。在“删除”对话框中,选择“向上移动单元格”选项。然后,点击“确定”按钮。见截图:
     Delete the sorted rows
  2. 只有名称为 Jener 的记录被删除,而没有删除整行。因此,数据集右侧或左侧的任何数据都不会受到影响。

步骤 4:应用排序功能恢复数据的原始顺序

点击辅助列的标题,然后转到功能区上的“数据”并选择“升序排序”以根据辅助列中的顺序组织数据。这将把选定范围内的数据恢复到其原始顺序。

步骤 5:删除辅助列

最后,根据需要删除辅助列以清理您的工作表。


在本文中,我们探讨了几种基于单元格值删除 Excel 中行的方法。您可以选择您喜欢的方法。如果您有兴趣探索更多 Excel 技巧和窍门,我们的网站提供了数千个教程,请 点击这里访问它们。感谢您的阅读,我们期待在未来为您提供更多有用的信息!


相关文章:

  • 轻松删除 Excel 中的空白单元格 – 完整教程
  • 在 Excel 中删除空白单元格是一项常见任务,可以帮助简化您的数据,使其更易于分析、理解和呈现。空白单元格可能会破坏数据分析,导致公式错误,并使数据集看起来不完整或不专业。在本教程中,我们将探讨几种有效删除或管理 Excel 中空白单元格的方法,例如定位特殊功能、公式、筛选功能。每种方法适用于不同的需求和场景,因此您可以选择最适合您需求的方法。
  • 根据背景颜色删除行
  • 如何根据背景颜色删除整行?在此示例中,我需要删除所有填充蓝色背景色的单元格所在的行,如下图所示。通过本文,您将获得一些代码来在 Excel 中实现此任务。
  • 每隔一行删除
  • 如果您想快速删除 Excel 中每隔一行或列,重点是如何快速选择每隔一行或列,然后对其应用删除操作。本文将向您展示一些关于如何首先选择每隔一行或列然后快速删除它们的技巧。