Как установить цвет фона ячеек Excel с помощью VBA?

В рамках программы на VBA мне нужно установить цвета фона определенных ячеек на зеленый, желтый или красный в зависимости от их значений (по сути, это монитор здоровья, где зеленый - нормальный, желтый - пограничный, а красный - опасный).

Я знаю, как установить значения этих ячеек, но как установить цвет фона.

Решение

Вы можете использовать любой из них:

ActiveCell.Interior.ColorIndex = 28

или

ActiveCell.Interior.Color = RGB(255,0,0)
Комментарии (2)

Это прекрасный пример того, как следует использовать макрорекордер. Включите рекордер и установите цвет ячеек с помощью пользовательского интерфейса. Остановите рекордер и просмотрите макрос. Он сгенерирует кучу лишнего кода, но он также покажет вам синтаксис, который работает для того, чего вы пытаетесь достичь. Вычеркните то, что вам не нужно, и измените (если нужно) то, что осталось.

Комментарии (0)

Или же можно не утруждать себя кодированием и использовать функцию 'условного форматирования' в Excel, которая установит цвет фона и цвет шрифта на основе значения ячейки.

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

Комментарии (0)