2017-09-26 87 views
0

我正在对宏代码进行最后的修改,但是我包含的最后一行是用于删除A列中的数据为空的行。当我遇到空白行的情况时,它可以正常工作,但是如果不需要行删除,我会遇到一个调试问题。如何在下面发布的代码更改为只在基于A列中没有信息的额外空行时工作,并且在不需要删除时工作相同。VBA将条件添加到行删除

Range("A7:A" & LastRow).SpecialCells(xlCellTypeBlanks).EntireRow.Delete 
+3

裹在'上的错误恢复Next'然后'对错误转到0'忽略由于没有空白而导致的任何错误。 –

回答

1

计数范围内的空行第一,如果有再执行删除代码,否则只是通过:

If Application.WorksheetFunction.CountBlank(Range("A1:A" & LastRow)) > 0 Then 
    Range("A1:A" & LastRow).SpecialCells(xlCellTypeBlanks).EntireRow.Delete 
End If 
+0

蒂姆威廉姆斯的建议也可以工作,但我并不喜欢使用'在错误恢复下',因为如果你有任何机会越来越多地开发你的代码,并忘记保持包装完好无损,那么你可能会遇到问题。另外,如果没有空白单元格/行要删除,你可能想要执行一些其他代码,在这种情况下'在错误恢复下一个'将不方便。 – Ibo

+0

感谢它为我完美工作。 –

+0

@HazatBangurah请点击复选标记将其选为正确答案 – Ibo