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

如何在 Excel 中根据条件清除单元格内容?

作者Xiaoyang修改日期

有时,您可能需要在 Excel 中根据特定条件清除单元格内容,例如:当单元格包含某个特定值时清除其内容;当另一列中存在空单元格时清除对应单元格内容;或根据单元格的背景颜色来清除内容等。本文将为您介绍一些实用技巧,助您快速、轻松地完成这些操作。

使用 VBA 代码基于单元格值清除单元格内容

使用 VBA 代码清除值大于或小于特定值的整行

使用便捷功能基于单元格值清除单元格或整行内容

使用 VBA 代码在另一单元格为空时清除整行

使用 VBA 代码基于背景颜色进行清除单元格内容


清除单元格内容使用 VBA 代码基于单元格值

例如,您有以下数据区域,现在希望清除内容为“Hoodie”的单元格,下方的 VBA 代码即可助您轻松实现。

示例数据

1. 按住 ALT + F11 键,即可打开 Microsoft Visual Basic for Applications 窗口。

2. 单击插入> 模块,并将以下代码粘贴到弹出的模块窗口中。

VBA 代码:当单元格等于特定值时清除单元格内容

Sub ClearContents()
'Updateby ExtendOffice
 Dim xRng As Range
 Dim xCell As Range
 Dim xText As String
 Set xRng = Application.Range("A2:A12")
 xText = "Hoodie" 'Change this text to your own
 For Each xCell In xRng
 If xCell.Value = xText Then
 xCell.clearContents
 End If
 Next xCell
End Sub
注意:在上述代码中,A2:A12 是您要从中清除单元格内容的数据区域,“Hoodie”是要清除的特定值。请根据实际情况修改。

3. 然后,按下 F5 键运行此代码,所有内容为“Hoodie”的单元格将立即被清除,请参见截图:

根据单元格值清除单元格内容的 VBA 代码

kutools for excel AI 的截图

借助 KUTOOLS AI 解锁 Excel 的神奇功能

  • 智能执行:只需输入简单命令,即可执行单元格操作、分析数据并创建图表。
  • 自定义公式:生成量身定制的公式,助您优化工作流程!
  • VBA 编码:轻松编写并运行 VBA 代码。
  • 公式解析:轻松掌握复杂公式,一目了然!
  • 文本翻译:轻松打破电子表格中的语言障碍!
借助 AI 驱动的工具提升您的 Excel 能力。立即下载,体验前所未有的高效!

使用 VBA 代码清除值大于或小于特定值的整行

假设您有以下数据区域,需要清除 D 列中数值大于或小于 300 的整行内容。接下来,我将编写一段 VBA 代码来实现这一操作。

示例数据

1. 按住 ALT + F11 键以打开 Microsoft Visual Basic for Applications 窗口。

2. 单击插入> 模块,并将以下代码粘贴到模块窗口中。

VBA 代码:当单元格值大于或小于特定值时清除整行

Sub ClearRowInValue()
'Updateby ExtendOffice
Dim xRg As Range
Dim xStrAddress As String
Dim xStrValue As Integer
Dim xCell As Range
Dim xRowRg As Range
Dim xF As Integer
Dim xBol As Boolean
xStrAddress = "D2:D12" 'Change cell range
xStrValue = 300 'change the value
Set xRg = Range(xStrAddress)
For xF = xRg.Rows.Count To 1 Step -1
    Set xRowRg = xRg.Rows.Item(xF)
    xBol = False
    For Each xCell In xRowRg.Cells
        If Application.IsNumber(xCell.Value) Then
        If xCell.Value > xStrValue Then
        xBol = True
        Exit For
        End If
        End If
    Next
    If xBol Then
        xRowRg.EntireRow.clearContents
    End If
Next
End Sub
注意:在上述代码中,D2:D12 是包含您要基于其清除行的特定值的数据区域;300 是特定值;脚本中>字符(位于 )If xCell.Value > xStrValue Then)表示“大于”,如需“小于”,请根据需要将其改为<字符。

3. 然后按 F5 键运行此代码,即可清除 D 列中所有值大于 300 的整行内容,请参见截图:

如果值大于或小于特定值,则清除整行的 VBA 代码


使用便捷功能基于单元格值清除单元格或整行内容

如果您已安装 Kutools for Excel,即可使用其选择指定单元格功能,根据特定值快速选中单元格或整行,并一键清除内容。

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

安装 Kutools for Excel 后,请按如下操作:

1. 选择包含要基于其清除单元格或整行内容的值的数据区域,然后单击 Kutools > 选择 > 选择指定单元格,请参见截图:

点击 Kutools > 选择 > 选择特定单元格

2. 在打开的选择指定单元格对话框中,执行以下操作:

  • 单击单元格整行以选择您想要的内容;
  • 根据需要在指定类型部分下设置条件。例如,我希望筛选出 D 列中值大于 300 的行。

在对话框中指定选项

3. 然后单击确定按钮,所有值大于 300 的行将被选中。此时,只需按下键盘上的 Delete 键,即可删除单元格内容,请参见截图:

所有值大于特定值的行均被选中,然后删除其内容

提示:您还可以使用许多其他条件,请根据下图所示对话框指定您自己的条件:
对话框中的许多其他条件

使用 VBA 代码在包含空单元格时清除选区内的数据行

在此情况下,若数据区域中的单元格包含任何空白内容,我希望清除如下截图所示范围内的整行数据。

如果区域中包含空白单元格,则清除该行数据

要完成此任务,请应用以下 VBA 代码:

1. 按住 ALT + F11 键,即可打开 Microsoft Visual Basic for Applications 窗口。

2. 单击插入 > 模块,然后将以下代码粘贴到模块窗口中。

VBA 代码:在包含空单元格时清除行数据

Sub ClearContents()
'Updateby ExtendOffice
Dim xcell As Range
Set xrng = Application.Range("A2:D12")
For Each xcell In xrng
If xcell.Value = "" Then
Intersect(xcell.EntireRow, xrng).ClearContents
End If
Next
End Sub
注意:在上述代码中,A2:D12 是包含您要从中清除单元格内容的空单元格的数据区域。

3. 然后按 F5 键运行此代码,所需范围内包含空单元格的行将立即被清除。


清除单元格内容使用 VBA 代码基于背景颜色

要清除填充了特定背景颜色的单元格,您可使用以下 VBA 代码。

1. 按住 ALT + F11 键以打开 Microsoft Visual Basic for Applications 窗口。

2. 单击插入> 模块,然后将以下代码粘贴到模块窗口中。

VBA 代码:清除单元格内容基于背景颜色

Sub Clearcontents()
'Updateby ExtendOffice
Dim xcell As Range
Dim xrng As Range
Set xrng = Application.Range("A2:D12")
    For Each xcell In xrng
        If xcell.Interior.Color = RGB(252, 228, 214) Then
            xcell.Clearcontents
        End If
    Next
End Sub
注意:在上述代码中,A2:D12 是您要使用的数据区域,RGB(252, 228, 214) 是您要基于其清除单元格的特定颜色,您可以通过计算机上的画图程序提取背景颜色的 RGB 值。

3. 然后按 F5 键运行此代码,指定背景颜色的单元格内容将立即被清除。请参见截图:

根据背景颜色清除单元格内容的 VBA 代码


  • 超级编辑栏(轻松编辑多行文本和公式);阅读版式(轻松阅读和编辑大量单元格);粘贴到筛选范围……
  • 合并单元格/行/列并保留数据;分割单元格内容;合并重复行并求和/求平均值……防止重复项单元格;比较区域……
  • 选择重复或唯一行;选择空白行(所有单元格均为空);超级查找和模糊查找多个工作簿中的内容;随机选择……
  • 精准公式复制多个单元格而不更改公式引用;自动创建引用到多个工作表;插入项目符号、复选框等更多功能……
  • 收藏并快速插入公式、区域、图表和图片;加密单元格并设置密码;创建邮件列表并发送电子邮件……
  • 提取文本、添加文本、删除某位置字符、删除空格;创建并打印数据分页统计;在单元格内容与批注之间转换……
  • 超级筛选(保存并应用筛选方案到其他工作表);高级排序按月/周/日、频率等分组;特殊筛选按加粗、倾斜等格式……
  • 合并工作簿和工作表;汇总表格基于关键列;分割数据到多个工作表批量转换 xls、xlsx 和 PDF……
  • 数据透视表按周数、星期几等分组……显示未锁定、选区锁定并以不同颜色标识;高亮显示包含公式/名称的单元格……
kte tab 201905
  • 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑与阅读,大幅提升多文档操作效率!
  • 在同一个窗口的新标签页中打开并创建多个文档,而非在新窗口中操作。
  • 将您的工作效率提升 50%,每天减少数百次鼠标点击!
officetab bottom