Перейти к содержимому

Как удалить строки на основе цвета фона в Excel?

Author: Xiaoyang Last Modified: 2025-08-07

Как можно удалить все строки на основе цвета фона? В этом примере мне нужно удалить все строки, ячейки которых заполнены синим цветом фона, как показано на следующем скриншоте. В этой статье вы получите несколько кодов для выполнения этой задачи в Excel.

A screenshot showing rows with blue background color to be deleted in Excel

Удаление строк с определенным цветом фона на основе каждой ячейки

Удаление строк с определенным цветом фона на основе одного столбца


arrow blue right bubble Удаление строк с определенным цветом фона на основе каждой ячейки

Если у вас есть диапазон данных, заполненных некоторыми цветами ячеек случайным образом, и вам нужно удалить строки, где цвет ячейки синий, как показано на следующем скриншоте:

A screenshot showing specific cells filled with blue color to be deleted in Excel

Чтобы удалить этот тип строк, вы можете использовать следующий код VBA, пожалуйста, сделайте следующее:

1. Нажмите и удерживайте клавиши ALT + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. Нажмите Вставить > Модуль и вставьте следующий код в окно Модуля.

Код VBA: Удаление строк, ячейки которых содержат определенный цвет заливки:

Sub DeleteRows()
'Updateby Extendoffice
    Dim rngCl As Range
    Dim xRows As Long
    Dim xCol As Long
    Dim colorLg As Long
    On Error Resume Next
    Set rngCl = Application.InputBox _
        (Prompt:="Select a cell with the background color to be deleted", _
        Title:="Kutools for Excel", Type:=8)
    On Error GoTo 0
    If rngCl Is Nothing Then
        MsgBox "User cancelled operation." & vbCrLf & _
        "Processing terminated", vbInformation, "Kutools for Excel"
        Exit Sub
    End If
    colorLg = rngCl.Interior.Color
    Application.ScreenUpdating = False
    With ActiveSheet.UsedRange
        For xRows = .Rows.Count To 1 Step -1
            For xCol = 1 To .Columns.Count
                           If .Cells(xRows, xCol).Interior.Color = colorLg Then
                    .Rows(xRows).Delete
                    Exit For
                End If
            Next xCol
        Next xRows
    End With
    Application.ScreenUpdating = True
End Sub

3. Затем нажмите клавишу F5, чтобы запустить этот код, и появится всплывающее окно с напоминанием выбрать ячейку с цветом заливки, который вы хотите удалить, см. скриншот:

A screenshot of selecting a cell with the background color to delete rows

4. Затем нажмите OK, и все строки будут удалены, если ячейка содержит определенный цвет заливки.


arrow blue right bubble Удаление строк с определенным цветом фона на основе одного столбца

Если вы хотите удалить строки с определенным цветом на основе только одного столбца, например, удалить строки с синим цветом в столбце A и получить скриншот ниже, здесь также есть код VBA, который может помочь.

A screenshot showing rows with blue color in column A to be deleted in Excel

1. Нажмите и удерживайте клавиши ALT + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. Нажмите Вставить > Модуль и вставьте следующий код в окно Модуля.

Код VBA: Удаление строк на основе столбца, ячейки которого имеют определенный цвет заливки:

Sub deleterow()
'UpdateBY Extendoffice
   Dim xRg As Range, rgDel As Range
    For Each xRg In ThisWorkbook.ActiveSheet.Range("A2:A21")
        If xRg.Interior.ColorIndex = 20 Then
            If rgDel Is Nothing Then
                Set rgDel = xRg
            Else
                Set rgDel = Union(rgDel, xRg)
            End If
        End If
    Next xRg
    If Not rgDel Is Nothing Then rgDel.EntireRow.Delete
End Sub

Примечание: В приведенном выше коде A2:A21 — это столбец, содержащий определенный цвет заливки, на основе которого вы хотите удалить строки; число 20 в скрипте ColorIndex = 20 — это индекс цвета, на основе которого вы хотите удалить строки. Вы можете изменить их по своему усмотрению.

3. Затем нажмите клавишу F5, чтобы запустить этот код, и все строки, ячейки которых содержат синий цвет в столбце A, будут удалены сразу.

Лучшие инструменты для повышения продуктивности в Office

🤖 Kutools AI Aide: Переворот в анализе данных на основе: Интеллектуальное выполнение   |  Сгенерировать код  |  Создать Пользовательские Формулы  |  Анализ данных и генерация диаграмм  |  Вызов Kutools Functions
Популярные функции: Найти, выделить или отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячейки без потери данных   |   Округлить...
Супер ПОИСК: VLookup с несколькими критериями    VLookup с несколькими значениями  |   Многолистовой поиск   |   Распознавание нечетких соответствий ....
Расширенный раскрывающийся список: Быстро создать раскр. список   |  Зависимый раскрывающийся список   |  Множественный выбор в раскрывающемся списке ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка фокусировки   |  Дизайн листа   |   Улучшенная строка формулы    Управление книгой и листами   |  Библиотека автотекста (Auto Text)   |  Выбор даты   |  Объединить данные   |  Шифрование/Расшифровка ячеек    Отправить письмо по списку   |  Супер фильтр   |   Специальный фильтр (фильтр по жирному/курсиву/зачеркиванию...) ...
Топ–15 наборов инструментов: 12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...)   |   50+ типов диаграмм (Диаграмма Ганта, ...)   |   40+ практических формул (Расчет возраста на основе даты рождения, ...)   |   19 инструментов вставки (Вставить QR-код, Вставить изображение из пути, ...)   |  12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...)   |  7 инструментов объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...)   |   ... и многое другое
Используйте Kutools на вашем предпочитаемом языке – поддерживаются английский, испанский, немецкий, французский, китайский и более40 других языков!

Повысьте свои навыки работы в Excel с Kutools для Excel и ощутите новую эффективность. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени.  Щелкните здесь, чтобы получить наиболее нужную вам функцию...


Office Tab добавляет вкладочный интерфейс в Office, делая вашу работу значительно проще

  • Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна, а не в новых окнах.
  • Увеличьте свою продуктивность на50% и сократите сотни кликов мышью ежедневно!