根据值select/删除某些行

我编写了这个脚本来删除包含列C中与“201103”不同的值的行。 当我用这个来大胆的 ,它可以工作,但是当我使用它。 .Delete它performance奇怪,不能正常工作。

我试图得到选定的行,并使用UNION合并它并使用.SELECT (多个),所以我可以手动删除它,但不知道如何做到这一点。

 Sub test() Dim Cell As Range For Each Cell In Range("C2:C2308").Cells If (Cell.Value <> "201103" And Cell.Value <> "") Then Cell.EntireRow.Font.Bold = True 'Cell.EntireRow.Delete End If Next Cell End Sub 

有谁知道如何解决它,所以它工作正常?

尝试这个:

 Sub test() ' With ActiveSheet .AutoFilterMode = False With Range("C2", Range("C" & Rows.Count).End(xlUp)) .AutoFilter 1, "<>201103" On Error Resume Next .Offset(1).SpecialCells(12).EntireRow.Delete End With .AutoFilterMode = False End With End Sub