Note: The other languages of the website are Google-translated. Back to English
English English

如果单元格在Excel中包含零,如何删除整行?

有时,如果在Excel中该单元格包含零,则希望删除整行,如果其中包含几个单元格,则可以将它们一一删除。 但是,需要删除几百行包含零的行吗? 您可以选择以下一种棘手的方法来解决它。

如果单元格中包含零与Excel中的筛选器功能删除行
如果Excel中的VBA单元格包含零,则删除行
如果单元格包含零,则使用Kutools for Excel删除行


如果单元格中包含零与Excel中的筛选器功能删除行

您可以使用“过滤器”功能基于某一列中的零值过滤掉所有行,然后在以后删除所有可见行。 请执行以下操作。

1.选择包含要删除其整个行的零值的列单元格,然后单击 数据 > 筛选器。 看截图:

2.然后,在所选列的第一个单元格中显示一个下拉箭头,单击箭头,然后选择 号码过滤器 > 等于 从下拉列表中选择。

doc如果为零则删除1

3。 在里面 自定义自动筛选 对话框中,输入数字 0 进入文本框,如下图所示,然后单击 OK 按钮。

doc如果为零则删除1

4.然后,该特定列中的所有零值单元格将被过滤掉。 请选择过滤器范围内的所有可见单元格,然后右键单击它们,选择 删除行 从右键单击菜单中。 然后在弹出的提示框中,点击 OK 按钮。 看截图:

doc如果为零则删除1

5.现在,所有可见行均被删除。 您可以点击 数据 > 筛选器 再次显示所有没有零值单元格的数据。 看截图:

doc如果为零则删除1


如果Excel中的某个范围内存在零值,则轻松删除所有行:

Kutools for Excel的 选择特定的单元格 实用程序可以帮助您轻松地选择整个行(如果在某个范围内存在零值),然后您可以手动快速快速删除所有选定行,而不会出现任何错误。
立即下载并尝试! (30天免费试用)


如果Excel中的VBA单元格包含零,则删除行

本节将向您展示VBA方法,以删除Excel中某一列中存在零值的所有行。

1。 按 Alt + F11键 同时显示 Microsoft Visual Basic应用程序 窗口。

2.在“ Microsoft Visual Basic for Applications”窗口中,单击“ 插页 > 模块,然后将以下VBA代码复制并粘贴到模块窗口中。

VBA:如果工作表中的某些列范围内存在零值,则删除整个行

Sub DeleteZeroRow()'Updateby20140616 Dim Rng作为范围Dim WorkRng作为错误发生时的范围恢复下一个xTitleId =“ KutoolsforExcel” Set WorkRng = Application.Selection Set WorkRng = Application.InputBox(“ Range”,xTitleId,WorkRng.Address,类型:= 8 )Application.ScreenUpdating = False设置Rng = WorkRng.Find(“ 0”,LookIn:= xlValues)如果不是Rng则为空,则Rng.EntireRow.Delete结束如果循环,而没有Rng则为空

3。 按 F5 运行代码的键,在弹出的 KutoolsForexcel. 对话框中,根据其中的零值选择要删除整个行的列范围,然后单击 OK 按钮。 看截图:

doc如果为零则删除1

然后,将立即删除基于指定列范围内零值的所有行。

doc如果为零则删除1


如果单元格包含零,则使用Kutools for Excel删除行

对于许多Excel用户,使用VBA代码在Excel中删除数据很危险。 如果您不完全信任VBA代码,我们建议您在此处尝试 选择特定的单元格 实用程序 Kutools for Excel.

申请前 Kutools for Excel首先下载并安装.

1.选择列范围,您将基于其中的零值删除整个行,然后单击 库工具 > 选择 > 选择特定的单元格。 看截图:

2。 在里面 选择特定的单元格 对话框,您需要:

(1)选择 整行 在选项 选择类型 部分。

(2)选择 等于 在第一个 特定类型 下拉列表,然后输入数字 0 进入文本框。

(3)点击 OK 按钮。

3.弹出一个对话框,告诉您已选择了多少行,单击 OK 按钮。 现在,所有具有零值的行都位于指定的列范围内。 请右键单击任何选定的行,然后单击 删除 在右键菜单中。 看截图:

doc如果为零则删除1

现在,指定列中存在的所有值为零的行将立即删除。 看截图:

doc如果为零则删除1

  如果您想免费试用该工具(30天), 请点击下载,然后按照上述步骤进行操作。


如果单元格包含零,则使用Kutools for Excel删除行


相关文章:


最佳办公效率工具

Kutools for Excel解决了您的大多数问题,并使您的生产率提高了80%

  • 重用: 快速插入 复杂的公式,图表 以及您以前使用过的任何东西; 加密单元 带密码 创建邮件列表 并发送电子邮件...
  • 超级公式栏 (轻松编辑多行文本和公式); 阅读版式 (轻松读取和编辑大量单元格); 粘贴到过滤范围...
  • 合并单元格/行/列 不会丢失数据; 拆分单元格内容; 合并重复的行/列...防止细胞重复; 比较范围...
  • 选择重复或唯一 行; 选择空白行 (所有单元格都是空的); 超级查找和模糊查找 在许多工作簿中; 随机选择...
  • 确切的副本 多个单元格,无需更改公式参考; 自动创建参考 到多张纸; 插入项目符号,复选框等...
  • 提取文字,添加文本,按位置删除, 删除空间; 创建和打印分页小计; 在单元格内容和注释之间转换...
  • 超级滤镜 (将过滤方案保存并应用于其他工作表); 高级排序 按月/周/日,频率及更多; 特殊过滤器 用粗体,斜体...
  • 结合工作簿和工作表; 根据关键列合并表; 将数据分割成多个工作表; 批量转换xls,xlsx和PDF...
  • 超过300种强大功能。 支持Office / Excel 2007-2019和365。支持所有语言。 在您的企业或组织中轻松部署。 完整功能30天免费试用。 60天退款保证。
kte选项卡201905

Office选项卡为Office带来了选项卡式界面,使您的工作更加轻松

  • 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
  • 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
  • 每天将您的工作效率提高50%,并减少数百次鼠标单击!
officetab底部
按评论排序
注释 (15)
还没有评分。 成为第一位评论!
该评论由网站上的主持人最小化
这是一个救生员!
该评论由网站上的主持人最小化
您的 VB 代码不起作用。 它删除所有在 10s 位置为零的行。 我希望没有人真正使用它,因为他们会删除数据......
该评论由网站上的主持人最小化
我修改了上面的代码为我工作。 我想删除 C 行中包含“Delete”的每一行。 Sub Delete_DeleteRows() Set WorkRng = Range("C2:C12000") Application.ScreenUpdating = False Do Set Rng = WorkRng.Find("Delete", LookIn:= xlValues) If Not Rng is nothing Then Rng.EntireRow.Delete End If Loop While Not Rng is nothing Application.ScreenUpdating = True End Sub
该评论由网站上的主持人最小化
我修改了下面的代码为我工作。 这删除了 ​​C 列中 C 列单元格中具有“删除”的每一行。 Sub Delete_DeleteRows() Set WorkRng = Range("C2:C12000") Application.ScreenUpdating = False Do Set Rng = WorkRng.Find("Delete" , LookIn:=xlValues) If Not Rng is nothing Then Rng.EntireRow.Delete End If Loop While Not Rng is nothing Application.ScreenUpdating = True End Sub
该评论由网站上的主持人最小化
感谢您的回复,为我工作
该评论由网站上的主持人最小化
嗨,
它对我有用,非常感谢。
如果我有多张纸? 我如何为所有工作表运行脚本 1 次?
该评论由网站上的主持人最小化
为我的目的而修改--感谢您的帮助: Sub DeleteZeroRow() Dim Rng As Range Dim WorkRng As Range On Error Resume Next xTitleId = "" Application.Calculation = xlManual MsgBox "设置您要删除未使用的范围 0 数量行来自" Set WorkRng = Application.InputBox("Range", xTitleId, "FG93:FG500", Type:=8) Application.ScreenUpdating = False Sheets("ENTRY").Select Do Set Rng = WorkRng.Find("0 ", LookIn:=xlValues) If Not Rng is nothing Then Rng.EntireRow.Delete End If Loop While Not Rng is nothing Application.ScreenUpdating = True Range("FF92").Select Selection.End(xlDown).Select MsgBox "Removed FG 列中的 0 行——现在正在计算——请稍候” Application.Calculation = xlAutomatic End Sub
该评论由网站上的主持人最小化
嗨,亲爱的,我需要一个代码来隐藏工作表 0 中“N”列上 value=1 的行。当更新工作表 2 上的详细信息时,“N”列的值会改变。那是时间需要取消隐藏该行。 是否可以使用 Excel 公式(没有宏和 Excel 过滤器)来做到这一点。
该评论由网站上的主持人最小化
这对我不起作用。 它将我选择的列和相邻列中的所有值都更改为零。 我一定做错了什么!
该评论由网站上的主持人最小化
嗨,雪莉,
该代码在我的情况下运行良好。 您使用哪个 Excel 版本?
该评论由网站上的主持人最小化
嗨水晶。 我在两年前发布了这个,所以我猜我想通了。 不过谢谢你的回复。
该评论由网站上的主持人最小化
将此插入 VB 新模块中。
这是使用 InputBox 删除包含该单词的行。

属性 VB_Name = "FindDelRowByWord"
子 FindDelRow()
'Updateby20140616
昏暗范围
将 WorkRng 调暗为范围
将 xRep 调暗为字符串
出错时继续下一步
xTitleId = "ZOK 工具"
设置 WorkRng = Application.Selection
设置 WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
xRep = Application.InputBox("要删除的行:", "ZOK 工具", , , , , 2)
Application.ScreenUpdating = False
Do
设置 Rng = WorkRng.Find(xRep, LookIn:=xlValues)
如果不是 Rng 什么都不是,那么
Rng.EntireRow.Delete
结束如果
Loop While Not Rng 什么都不是
Application.ScreenUpdating =真
END SUB
该评论由网站上的主持人最小化
如果您有一张大工作表,并且有些行要保留,而其他行包含某些关键字并删除它们,该怎么办? kutools 对我有用,但是对于一个关键字,很多行都有那个关键字,行被删除了,我只想有多个关键字来做同样的事情? 这对上面的代码有用吗?
该评论由网站上的主持人最小化
美好的一天,
Kutools 可以同时处理两个关键词。 您需要使用“And”或“Or”启用它的第二个条件。 希望我能帮上忙。
该评论由网站上的主持人最小化
Despues de utilizar subtotal Como hacer para eliminar las filas involucradas que en el subtotal es igual a 0?
这里还没有评论
留下你的意见
以访客身份发帖
×
评价此帖子:
0   产品特性
建议地点