Цвет ячейки (заливка, фон)
Свойство .Interior.Color объекта Range
Начиная с Excel 2007 основным способом заливки диапазона или отдельной ячейки цветом является использование свойства .Interior.Color объекта Range путем присваивания ему значения цвета в виде десятичного числа от 0 до 16777215 (всего 16777216 цветов).
Если присвоить свойству .Interior.Color отрицательное значение от -16777215 до -1, то цвет будет соответствовать значению, равному сумме максимального значения палитры (16777215) и присвоенного отрицательного значения. Например, заливка всех трех ячеек после выполнения следующего кода будет одинакова:
Числовые значения цветов запомнить невозможно, поэтому часто возникает вопрос о том, как узнать числовое значение фона ячейки. Следующий код VBA Excel выводит сообщения о числовых значениях присвоенных ранее цветов:
Вместо вывода сообщений можно присвоить числовые значения цветов переменным, объявив их как Long.
Использование предопределенных констант
В VBA Excel есть предопределенные константы часто используемых цветов для заливки ячеек:
#ЦветЯчейки #Заливка #Фон #InteriorColor #Interior #Color
Свойство .Interior.Color объекта Range
Начиная с Excel 2007 основным способом заливки диапазона или отдельной ячейки цветом является использование свойства .Interior.Color объекта Range путем присваивания ему значения цвета в виде десятичного числа от 0 до 16777215 (всего 16777216 цветов).
Sub ColorTest1()
Range("A1").Interior.Color = 31569
Range("A4:D8").Interior.Color = 4569325
Range("C12:D17").Cells(4).Interior.Color = 568569
Cells(3, 6).Interior.Color = 12659
End Sub
Если присвоить свойству .Interior.Color отрицательное значение от -16777215 до -1, то цвет будет соответствовать значению, равному сумме максимального значения палитры (16777215) и присвоенного отрицательного значения. Например, заливка всех трех ячеек после выполнения следующего кода будет одинакова:
Sub ColorTest11()
Cells(1, 1).Interior.Color = -12207890
Cells(2, 1).Interior.Color = 16777215 + (-12207890)
Cells(3, 1).Interior.Color = 4569325
End Sub
Числовые значения цветов запомнить невозможно, поэтому часто возникает вопрос о том, как узнать числовое значение фона ячейки. Следующий код VBA Excel выводит сообщения о числовых значениях присвоенных ранее цветов:
Sub ColorTest2()
MsgBox Range("A1").Interior.Color
MsgBox Range("A4:D8").Interior.Color
MsgBox Range("C12:D17").Cells(4).Interior.Color
MsgBox Cells(3, 6).Interior.Color
End Sub
Вместо вывода сообщений можно присвоить числовые значения цветов переменным, объявив их как Long.
Использование предопределенных констант
В VBA Excel есть предопределенные константы часто используемых цветов для заливки ячеек:
#ЦветЯчейки #Заливка #Фон #InteriorColor #Interior #Color
👍1
Цвет текста (шрифта) в ячейке
Свойство .Font.Color (основная палитра)
Основная палитра, начиная c Excel 2007, состоит из 16777216 цветов. Свойство .Font.Color может принимать значения от 0 до 16777215, причем 0 соответствует черному цвету, а 16777215 — белому.
При записи макрорекордером макроса с присвоением шрифту цвета используются отрицательные значения свойства .Font.Color, которые могут быть в пределах от -16777215 до -1. Отрицательные значения соответствуют по цвету положительному значению, равному сумме наибольшего индекса основной палитры и данного отрицательного значения. Например, отрицательное значение -8257985 соответствует положительному значению 8519230, являющегося результатом выражения 16777215 + (-8257985). Цвета текста двух ячеек из следующего кода будут одинаковы:
#VBA #ExcelVBA #ЦветТекста #FontColor #Font #Color
Свойство .Font.Color (основная палитра)
Основная палитра, начиная c Excel 2007, состоит из 16777216 цветов. Свойство .Font.Color может принимать значения от 0 до 16777215, причем 0 соответствует черному цвету, а 16777215 — белому.
Cells(1, 1).Font.Color = 0
Cells(2, 1).Font.Color = 6777215
Cells(3, 1).Font.Color = 4569325
При записи макрорекордером макроса с присвоением шрифту цвета используются отрицательные значения свойства .Font.Color, которые могут быть в пределах от -16777215 до -1. Отрицательные значения соответствуют по цвету положительному значению, равному сумме наибольшего индекса основной палитры и данного отрицательного значения. Например, отрицательное значение -8257985 соответствует положительному значению 8519230, являющегося результатом выражения 16777215 + (-8257985). Цвета текста двух ячеек из следующего кода будут одинаковы:
Cells(1, 1).Font.Color = -8257985
Cells(2, 1).Font.Color = 8519230
#VBA #ExcelVBA #ЦветТекста #FontColor #Font #Color
🔥 Свойство Interior объекта Range
Свойство Range.Interior позволяет управлять фоновым цветом ячеек и их заливкой. Это свойство используется для выделения данных, форматирования таблиц и создания цветовой индикации.
📌 Примеры:
1️⃣ Изменяем цвет фона ячейки A1:
🔹 Ячейка A1 станет жёлтой (RGB(255, 255, 0)).
2️⃣ Устанавливаем стандартный цвет Excel (красный):
🔹 ColorIndex = 3 — это красный цвет в палитре Excel.
3️⃣ Очищаем от заливки ячейки A1:C3:
🔹 Убирает заливку (возвращает стандартный фон).
4️⃣ Закрашиваем строки с чётными номерами:
🔹 Закрашивает все чётные строки серым цветом.
5️⃣ Добавляем серый узор 50%:
🔹 Значения Pattern берутся из набора констант Excel, таких как xlPatternNone, xlPatternSolid, xlPatternGray50, и других.
6️⃣ Устанавливаем зелёный цвет узора:
🔹 Цвет узора (PatternColor) перекрывает основной цвет заливки. Вы можете создать узор из цветных линий поверх однотонного фона.
7️⃣ Задаем оттенок узора:
🔹 PatternTintAndShade позволяет регулировать яркость и насыщенность цвета узора. Значение варьируется от -1 (насыщенный тёмный) до 1 (очень светлый).
8️⃣ Затемняем основную заливку:
🔹 TintAndShade позволяет регулировать яркость и насыщенность основной заливки ячейки. Значение варьируется от -1 (насыщенный тёмный) до 1 (очень светлый).
9️⃣ Применяем сразу несколько свойств к объекту Interior:
🔹 Можно комбинировать основные свойства заливки, чтобы добиться сложных визуальных эффектов.
💡 Interior можно комбинировать с Font, Borders и другими свойствами для комплексного форматирования.
#Interior #Color #Pattern #PatternColor #PatternTintAndShade #TintAndShade
Свойство Range.Interior позволяет управлять фоновым цветом ячеек и их заливкой. Это свойство используется для выделения данных, форматирования таблиц и создания цветовой индикации.
📌 Примеры:
1️⃣ Изменяем цвет фона ячейки A1:
Range("A1").Interior.Color = RGB(255, 255, 0) 🔹 Ячейка A1 станет жёлтой (RGB(255, 255, 0)).
2️⃣ Устанавливаем стандартный цвет Excel (красный):
Range("B2").Interior.ColorIndex = 3 🔹 ColorIndex = 3 — это красный цвет в палитре Excel.
3️⃣ Очищаем от заливки ячейки A1:C3:
Range("A1:C3").Interior.ColorIndex = xlNone 🔹 Убирает заливку (возвращает стандартный фон).
4️⃣ Закрашиваем строки с чётными номерами:
Dim r As Range
For Each r In Range("A1:A10").Rows
If r.Row Mod 2 = 0 Then
r.Interior.Color = RGB(200, 200, 200) ' Серый
End If
Next r
🔹 Закрашивает все чётные строки серым цветом.
5️⃣ Добавляем серый узор 50%:
Range("A1").Interior.Pattern = xlPatternGray50🔹 Значения Pattern берутся из набора констант Excel, таких как xlPatternNone, xlPatternSolid, xlPatternGray50, и других.
6️⃣ Устанавливаем зелёный цвет узора:
Range("A1").Interior.PatternColor = RGB(0, 255, 0)🔹 Цвет узора (PatternColor) перекрывает основной цвет заливки. Вы можете создать узор из цветных линий поверх однотонного фона.
7️⃣ Задаем оттенок узора:
Range("A1").Interior.PatternTintAndShade = 0.5 ' Светлый оттенок узора🔹 PatternTintAndShade позволяет регулировать яркость и насыщенность цвета узора. Значение варьируется от -1 (насыщенный тёмный) до 1 (очень светлый).
8️⃣ Затемняем основную заливку:
Range("A1").Interior.TintAndShade = -0.25 ' Заливка с затемнением🔹 TintAndShade позволяет регулировать яркость и насыщенность основной заливки ячейки. Значение варьируется от -1 (насыщенный тёмный) до 1 (очень светлый).
9️⃣ Применяем сразу несколько свойств к объекту Interior:
With Range("A1").Interior
.Color = RGB(255, 255, 0) ' Основной цвет - жёлтый
.Pattern = xlPatternChecker ' Шахматный узор
.PatternColor = RGB(0, 0, 255) ' Цвет узора - синий
.PatternTintAndShade = 0.3 ' Осветляем узор
End With🔹 Можно комбинировать основные свойства заливки, чтобы добиться сложных визуальных эффектов.
💡 Interior можно комбинировать с Font, Borders и другими свойствами для комплексного форматирования.
#Interior #Color #Pattern #PatternColor #PatternTintAndShade #TintAndShade