永发信息网

求教这段要是没有空行会报错是为什么?

答案:2  悬赏:20  手机版
解决时间 2021-02-15 08:34
  • 提问者网友:未信
  • 2021-02-15 04:52
Sub 删除空白行()
Dim rng As Range, n As Integer
n = Range("B65536").End(xlUp).Row
For Each cell In Range("B1:B" & n)
If IsEmpty(cell) Then
If rng Is Nothing Then
Set rng = cell
Else: Set rng = Application.Union(rng, cell)
End If
End If
Next
rng.EntireRow.Delete
End Sub
最佳答案
  • 五星知识达人网友:琴狂剑也妄
  • 2021-02-15 06:17
倒数第二行:rng.EntireRow.Delete ,改为:
If Not rng Is Nothing Then rng.EntireRow.Delete

当rng为空时,用delete方法会出错,因此,加一个if语句进行判断,rng不为空才进行删除操作。
全部回答
  • 1楼网友:空山清雨
  • 2021-02-15 06:48
虽然我很聪明,但这么说真的难到我了
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯