Другой способ: overflow-y:hidden
для родителя с дополнением.
#wrap {
overflow-y: hidden;
padding: 0 10px;
}
#wrap > div {
width: 100px;
height: 100px;
box-shadow: 0 0 20px -5px red;
}
Работа снизу вверх. Если вы удаляете строку, все перемещается вверх, и вы пропускаете эту строку на следующей итерации.
Вот «кишки» кода для обработки снизу.
With Worksheets("Sheet1")
For rw = .Cells(.Rows.Count, "B").End(xlUp).Row To 2 Step -1
Select Case UCase(.Cells(rw, "B").Value2)
Case "FG", "QC", "CS"
.Rows(rw).EntireRow.Delete
End Select
Next rw
End With
Поскольку для For Each
нет обратного цикла, вам нужно использовать несколько иной подход.
Кроме того, ваш код с несколькими If
s и OR
«кричит для использования Select Case
.
Dim StatusRange As Range
Dim i As Long
Set StatusRange = Range("B2", Range("B2").End(xlDown))
' loop backward when deleting Ranges, Rows, Cells
For i = StatusRange.Rows.Count To 1 Step -1
Select Case StatusRange(i, 1).Value
Case "FG", "QC", "CS"
StatusRange(i, 1).EntireRow.Delete
Case Else ' for the future if you need it
End Select
Next i
Case
) haha: D – David Zemens 17 April 2017 в 15:20