KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

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

АвторСяоянДата изменения

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

Снимок экрана, показывающий строки с синим фоном, которые будут удалены в Excel

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

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


синяя стрелка направо в пузыреУдалить строки с определённым Цвет фона на основе каждой ячейки

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

Снимок экрана, показывающий определённые ячейки, заполненные синим цветом, которые будут удалены в 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, чтобы запустить этот код. Появится диалоговое окно с запросом выбрать ячейку, цвет заливки которой вы хотите использовать для удаления (см. снимок экрана).

Снимок экрана выбора ячейки с фоновым цветом для удаления строк

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


синяя стрелка направо в пузыреУдалить строки с определённым Цвет фона на основе одного столбца

Если вы хотите удалять строки, в которых определённый цвет встречается только в одном столбце — например, удалить строки со синим цветом в столбце A, как показано на снимке экрана ниже, — вам также подойдёт следующий код VBA.

Снимок экрана, показывающий строки с синим цветом в столбце A, которые будут удалены в 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 Помощник: Преобразуйте Анализ данных с помощью:Интеллектуального выполнения   |  Генерации кода|  Создания пользовательские формулы  |  Анализа данных и построения диаграмм|  Вызова Расширенные функции
Популярные функции:Поиск, выделение или Отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячеек без потери данных   |  Округление без использования формул
Супер ПОИСК:VLookup по нескольким критериям  |  VLookup по нескольким значениям  |   VLookup по нескольким листам   |   Распознавание нечетких соответствий
Расширенный раскрывающийся список:Быстрое создание выпадающего списка   |  Зависимый выпадающий список   |  Выпадающий список с множественным выбором
Управление столбцами:Добавление заданного количества столбцов|Перемещение столбцов|Переключение видимости скрытых столбцов|Сравнение диапазонов и столбцов
Избранные функции:Сетка фокусировки   |  Просмотр дизайна   |Улучшенная строка формулы   | Управление рабочими книгами и листами   |  Библиотека ресурсов(автотекст)|  Выбор даты   |  Объединить листы  |  Шифрование/Расшифровать ячейки   | Отправка писем по списку   |  Супер фильтр   |   Специальный фильтр(Фильтр ячеек с жирным шрифтом/курсив/зачёркивание…) …
Лучшие наборы инструментов 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 % и экономит сотни кликов мышью каждый день!

Все надстройки Kutools — один установщик

Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.

ExcelWordOutlookTabsPowerPoint
  • Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
  • Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
  • Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
  • 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
  • Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек