String 在单元格中查找特定值并删除标识的行
我使用这个网站已经有一段时间了,并且一直在寻找一种相对简单的方法来在Excel07中用VBA实现任务 我有一个列,它有许多不同的值,我试图在AA:AA中找到以“L-”开头的单元格,然后从那里删除工作表中的行。activesheet/activebook永远不会更改,但我遇到的问题是,该列偶尔会有空白单元格。我试过使用下面的代码,但没有达到我需要的结果String 在单元格中查找特定值并删除标识的行,string,excel,vba,rows,String,Excel,Vba,Rows,我使用这个网站已经有一段时间了,并且一直在寻找一种相对简单的方法来在Excel07中用VBA实现任务 我有一个列,它有许多不同的值,我试图在AA:AA中找到以“L-”开头的单元格,然后从那里删除工作表中的行。activesheet/activebook永远不会更改,但我遇到的问题是,该列偶尔会有空白单元格。我试过使用下面的代码,但没有达到我需要的结果 Sub Remove_Expendables() Application.ScreenUpdating = FALSE Range("AA1").
Sub Remove_Expendables()
Application.ScreenUpdating = FALSE
Range("AA1").Select
Do
ActiveCell.Offset(1, 0).Select
If ActiveCell = (Left("L-",2) Then ActiveCell.ClearContents
Loop Until IsEmpty(ActiveCell.Offset(0, 2))
ActiveSheet.Columns("AA:AA").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
Application.ScreenUpdating = TRUE
End Sub
AutoFilter
比循环快得多
Sub AF_Delete()
Application.ScreenUpdating = False
With ActiveSheet
.AutoFilterMode = False
.Columns("AA").AutoFilter Field:=1, Criteria1:="=L-*"
.AutoFilter.Range.Offset(1, 0).EntireRow.Delete '
.AutoFilterMode = False
End With
Application.ScreenUpdating = True
End Sub
AutoFilter
比循环快得多
Sub AF_Delete()
Application.ScreenUpdating = False
With ActiveSheet
.AutoFilterMode = False
.Columns("AA").AutoFilter Field:=1, Criteria1:="=L-*"
.AutoFilter.Range.Offset(1, 0).EntireRow.Delete '
.AutoFilterMode = False
End With
Application.ScreenUpdating = True
End Sub
使用过滤器会更有效率。使用过滤器会更有效率。工作起来很有魅力,我也保存了它以便更好地理解它。非常感谢,这是我第一次在VBA中遇到这个“*”操作符…是时候阅读一些示例了。它非常有用,我还保存了它以便更好地理解它。非常感谢,这是我第一次在VBA中遇到这个“*”操作符…是时候阅读一些示例了。