excel vba 删除空白单元格所在的行

单击click控件,查找某一列的单元格,将空白的单元格中所在的行删除。实现的效果为:这只是一个简单示例,具体数据会有很多列,上百行。但是只需要查找关键列,如“姓名”中的空... 单击click控件,查找某一列的单元格,将空白的单元格中所在的行删除。

实现的效果为:

这只是一个简单示例,具体数据会有很多列,上百行。但是只需要查找关键列,如“姓名”中的空白单元格。望高人指点。
展开
 我来答
电子数码小百科NW
2020-02-14 · TA获得超过6493个赞
知道答主
回答量:15
采纳率:0%
帮助的人:4045
展开全部

1、首先在开发工具中打开VBA编辑器。

2、在单元格区域当中输入一些内容。

3、在VBA编辑器中插入模块。

4、在模块当中输入如下代码,然后运行Sub 清除空白数据行()Dim i As LongFor i=Cells(1048576, 2).End(xlUp).Row To 3 Step-1If Cells(i, 3)="" Then'如果单元格为Cells(i,1).EntireRow.Delete'符合条件的都删除整行End IfNext'检测下一个End Sub。

5、用快捷键Alt+F8调出运行宏窗口,然后单击“执行”按钮,程序执行后第三列为空白之单元格所在行全部删除。

百度网友a9cce72
2014-09-18 · TA获得超过111个赞
知道小有建树答主
回答量:150
采纳率:0%
帮助的人:77.4万
展开全部
假设你要查找的空白单元格在B列
Sub my()
Dim i As Long
For i = 1 To [A65536].End(xlUp).Row
If Cells(i, 2) = "" Then '这里的2就是你的列数,可以自己替换
Rows(i & ":" & i).Delete Shift:=xlUp
End If
Next
End Sub
追问
控件在sheet1,数据在sheet2,该如何实现?
感谢高人,你的代码的确可以实现我的要求,但是在我使用的时候发现了一个问题。在我录入了一个60多行的数据时,使用该功能控件,点击一次不能把所有应删除的行删除,而是点了很多次才都删完。不知道是什么问题。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
大风吹大风吹大风吹
2018-12-11
知道答主
回答量:14
采纳率:0%
帮助的人:1.3万
展开全部
Sub Macro1()
Dim i As Integer '小于32,767用integer
'Dim i As Long '超过32,767用Long
For i = [a20].End(1).Row To 1 Step -1 'a20到a1结束,步长 -1,就是每循环一次减1
If Cells(i, 1) = "" Then '判断 i 行是否为空?
Range("a" & i & ":e" & i).Select '然后选择ai:ei
Selection.Delete Shift:=xlUp '下方单元格上移的方式删除该行,这样删除不会影响到f列的数据
End If
Next
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
平阳虎01
高粉答主

2014-09-18 · 每个回答都超有意思的
知道大有可为答主
回答量:3.7万
采纳率:75%
帮助的人:4938万
展开全部
Sub 删除行()
    For i = [b65536].End(3).Row To 2 Step -1
        If Cells(i, 2) = "" Then Rows(i & ":" & i).Delete Shift:=xlUp
    Next
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lerk
2020-01-14
知道答主
回答量:6
采纳率:0%
帮助的人:5523
展开全部
Sub delblank()
On Error Resume Next

Columns("B:B").SpecialCells(xlCellTYpeBlanks).Entirerow.Delete

End sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式