Подробный ответ
Удаление строк по условию в Excel можно выполнить несколькими способами.
Через автофильтр
- Выделите диапазон данных и включите Данные → Фильтр.
- Отфильтруйте строки по нужному условию (например, значение = «удалить»).
- Выделите отфильтрованные строки, нажмите правую кнопку → «Удалить строки таблицы».
- Снимите фильтр — остальные данные сохранятся.
Через «Найти и заменить» (Ctrl+H)
Если значение одинаковое, замените его на пустое, затем удалите пустые строки.
Через VBA — удаление строк по условию
Sub DeleteRowsByCondition()
Dim i As Long
For i = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1
If Cells(i, 1).Value = "удалить" Then
Rows(i).Delete
End If
Next i
End SubВажно: цикл идёт снизу вверх (Step -1), иначе при удалении строк индексы смещаются и часть строк пропускается.
Через Power Query
Данные → Получить данные → Из таблицы, затем Главная → Удалить строки → Удалить строки с условием. Подходит для регулярного обновляемого удаления без макросов.
Совет: Перед массовым удалением создайте резервную копию листа (ПКМ по вкладке → Переместить/скопировать → Создать копию).