我有一个导出的工作表,其中包含 3 个无用行(包含无用文本),这些行夹在两个包含“------------”的单元格之间,在不同数量的有用数据行之后。那些无用的行在某些时候的含义并不统一,它们出现在 8 行有用数据之后,有时出现在 9 行之后,等等
我需要删除那些无用的行,但工作表非常大。所以,我必须使用VBA来解决这个问题。
作为初学者,我已根据自己的最佳能力编写了以下代码:
Application.ActiveSheet.Select("------------")
范围(选择).行(1:3).删除
但是不起作用。
请指导我以下两点:
如何选择两个包含“------------”的单元格之间出现的 3 行(撇号实际上不在单元格中;它们只是为您准备的)?
我可以使用删除关键字删除那些选定的行还是我需要其他东西?
感谢您的帮助。
干杯。
您可以使用下面的宏。它将删除该行中的值至少包含 3 个破折号“---”的任何行。但是,您可以将 - 的最小数量更改为您需要的任何数量。
Sub DeleteRows()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Set WS = ActiveSheet
For i = Cells.SpecialCells(xlLastCell).Row To 1 Step -1
If WS.Cells(i, i).Value Like "*---*" Then WS.Cells(i, i).EntireRow.Delete
Next
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub