删除单元格,如果它不包含关键字
我有一个包含目录的列。
如何search不包含关键字的单元格并将其删除?
例如,如果我有一个这样的列:
C:\Users\Desktop\Folder\html\test.html C:\Users\Desktop\Folder\book.html C:\Users\Desktop\Folder\Documents\test.html C:\Users\Desktop\Folder\frontpage.html C:\Users\Desktop\Folder\test.html
而我想search关键字“test.html”,我应该结束了这个:
C:\Users\Desktop\Folder\html\test.html C:\Users\Desktop\Folder\Documents\test.html C:\Users\Desktop\Folder\test.html
第二行和第四行应该删除。
我发现了一些有用的东西,但是如果我检查整个列,需要很长时间才能完成(所以我只用了100)。
Dim rng As Range Dim cell As Range Dim ContainWord As String Set rng = Range("A1:A100") ContainWord = "keyword" For Each cell In rng.Cells If cell.Find(ContainWord) Is Nothing Then cell.Clear Next cell
更换:
Set rng = Range("A1:A100")
有:
Set Rng = Intersect(Range("A:A"), ActiveSheet.UsedRange)
试试这个,应该会更快:
With UsedRange .AutoFilter 1, "<>*test.html*", xlAnd, , False .SpecialCells(xlCellTypeVisible).EntireRow.Delete End With