删除单元格,如果它不包含关键字

我有一个包含目录的列。

如何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