Выбор / удаление определенных строк в зависимости от значения - PullRequest
0 голосов
/ 21 сентября 2011

Я написал этот скрипт для удаления строк, которые содержат значение в столбце C, отличное от «201103». Когда я использую его для жирный , он работает, но когда я использую его с .Delete, он ведет себя странно и не работает должным образом.

Я пытался получить выделенные строки, а затем использовал 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

Кто-нибудь знает, как это исправить, чтобы он нормально работал?

1 Ответ

3 голосов
/ 21 сентября 2011

Попробуйте это:

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...