一般来说,我是宏和脚本的新手。
如果第 3、4 和 5 列为空,我想删除该行。
Sub DeleteRows()
Columns(3).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
适用于案例只是第 3 行的情况,但我尝试了各种方法使其按预期工作;它们都会导致某种错误。
那么,我该怎么做呢?
尝试这个:
Sub DeleteRows()
For i = 3 to 5
Columns(i).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
Next
唯一的问题是,如果没有空白单元格,它将返回一个错误。另一种方法是检查 EntireRow.Delete 之前是否有空白单元格。
以下是您的操作方法:
Sub DeleteRows()
Dim rngBlanks as Range
Dim i as Integer
For i = 3 to 5
On Error Resume Next
Set rngBlanks = Columns(i).SpecialCells(xlCellTypeBlanks)
On Error GoTo 0
If Not rngBlanks is nothing then
rngBlanks.EntireRow.Delete
End if
Next
让我知道这是否有效,如果您需要更多解释!