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

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

Author: Sun Last Modified: 2025-06-05

Когда вы получаете лист с множеством разноцветных ячеек, как показано на скриншоте ниже, в некоторых случаях вам может потребоваться идентифицировать индекс цвета фона этих цветных ячеек. Встроенной функции, которая могла бы определить индекс цвета ячейки, нет, но в этой статье я представляю несколько кодов VBA для быстрого выполнения этой задачи в Excel.
A screenshot showing cells with different background colors in Excel

Идентификация цвета ячейки с помощью VBA


Идентификация цвета ячейки с помощью VBA

Выполните следующие шаги, чтобы определить цвет ячейки с помощью VBA.

1. Нажмите Alt + F11 чтобы открыть окно Microsoft Visual Basic for Application окно.
A screenshot of the Microsoft Visual Basic for Application window in Excel

2. Щелкните Вставить > Модуль, чтобы открыть новый Модуль, и вставьте следующий код VBA в пустой скрипт. См. скриншот:

VBA: Получение традиционного шестнадцатеричного кода ячейки

Function getRGB1(FCell As Range) As String
'UpdatebyExtendoffice20170714
    Dim xColor As String
    xColor = CStr(FCell.Interior.Color)
    xColor = Right("000000" & Hex(xColor), 6)
    getRGB1 = Right(xColor, 2) & Mid(xColor, 3, 2) & Left(xColor, 2)
End Function
A screenshot showing how to insert a module for VBA
A screenshot of pasted code in the module

3. Сохраните код и закройте окно VBA. Выберите пустую ячейку рядом с цветной ячейкой, введите эту формулу: =getRGB1(A16), затем перетащите маркер автозаполнения по ячейкам, которые вы хотите использовать. См. скриншот:

A screenshot showing the VBA function entered in a cell to determine color index
A screenshot showing the color hex result

Совет: существуют и другие коды, которые могут идентифицировать индекс цвета ячейки.

1. VBA: Десятичное значение для каждого кода

Function getRGB2(FCell As Range) As String
   'UpdatebyExtendoffice20170714  
    Dim xColor As Long
    Dim R As Long, G As Long, B As Long
    xColor = FCell.Interior.Color
    R = xColor Mod 256
    G = (xColor \ 256) Mod 256
    B = (xColor \ 65536) Mod 256
    getRGB2 = "R=" & R & ", G=" & G & ", B=" & B
End Function

Результат:
A screenshot showing the RGB color values result

2. VBA: Десятичные значения

Function getRGB3(FCell As Range, Optional Opt As Integer = 0) As Long
 'UpdatebyExtendoffice20170714
    Dim xColor As Long
    Dim R As Long, G As Long, B As Long
    xColor = FCell.Interior.Color
    R = xColor Mod 256
    G = (xColor \ 256) Mod 256
    B = (xColor \ 65536) Mod 256
    Select Case Opt
        Case 1
            getRGB3 = R
        Case 2
            getRGB3 = G
        Case 3
            getRGB3 = B
        Case Else
            getRGB3 = xColor
    End Select
End Function

Результат:
A screenshot showing the entire RGB color code as a long integer result


Легко выбирайте дубликаты или уникальные значения в Excel

Если вы работаете с диапазоном данных в Excel и вам нужно выделить или выбрать повторяющиеся строки, как быстро справиться с этой задачей? С помощью Kutools для Excel функция Выбрать дубликаты и уникальные ячейки позволяет быстро выбирать дубликаты или уникальные значения в диапазоне. Вы также можете применить цвет фона и шрифта к этим дубликатам или уникальным значениям, что сделает ваши данные заметными без лишних усилий.
Highlight all duplicates with Kutools

Kutools для Excel - Усильте Excel более чем 300 необходимыми инструментами. Наслаждайтесь постоянно бесплатными функциями ИИ! Получите прямо сейчас


Связанные статьи:

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

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

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


Office Tab добавляет вкладки в Office и делает вашу работу намного проще

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