Попробуйте это, если вы хотите пройтись по каждой ячейке и проверить это, вы можете, но вам нужно будет выполнить цикл снизу вверх.Другой способ - использовать фильтр и удалить все видимые строки одновременно.
Dim lr As Long
Dim i As Long
lr = Cells(Rows.Count, 1).End(xlUp).Row
For i = lr - 1 To 2 Step -1
If Cells(i, "B") = "LLC" Then
Cells(i, "B").EntireRow.Delete
End If
Next i
Другим способом является использование фильтра и удаление каждой строки, для которой в столбце B указано «LLC».
With ActiveSheet
.AutoFilterMode = False
With Range("A1").CurrentRegion
.AutoFilter Field:=2, Criteria1:="LLC"
On Error Resume Next
.Offset(1, 0).SpecialCells(xlCellTypeVisible).EntireRow.Delete
End With
.AutoFilterMode = False
End With
Это только примеры, есть много способов выполнить эту задачу..
Код ниже, вероятно, ближе к тому, что вы пытались сделать.
With Sheets("Sheet1") 'Change to your worksheet name
For Each CELL In .Range("B2:B" & Cells(Rows.Count, "B").End(xlUp).Row)
If CELL.Value = "LLC" Then
CELL.EntireRow.Delete
End If
Next CELL
End With