Содержание
- Class Border (Excel VBA)
- For Each
- Color
- ColorIndex
- LineStyle
- ThemeColor
- TintAndShade
- Weight
- VBA Excel. Цвет текста (шрифта) в ячейке
- Цвет текста и предопределенные константы
- Цвет шрифта и модель RGB
- Свойство .Font.ColorIndex
- Tintandshade vba excel описание
- VBA Excel. Программное создание границ ячеек
- Программное создание границ ячеек
- Создание границ одной ячейки
- Пример кода записанного макроса
- Создание и удаление диагональных линий
- Расположение границ ячеек и диапазонов
- Толщина границ ячеек и диапазонов
- Стили границ (типы линий)
- Объект FormatCondition (Excel)
- Замечания
- Пример
- Методы
- Свойства
- См. также
- Поддержка и обратная связь
Class Border (Excel VBA)
The class Border represents the border of an object.
To use a Border class variable it first needs to be instantiated, for example
For Each
Here is an example of processing the Border items in a collection.
Color
Returns or sets the primary color of the object, as shown in the table in the remarks section. Use the RGB function to create a color value.
ColorIndex
Returns or sets a value that represents the color of the border. Possible return values are xlColorIndexAutomatic — Automatic color, xlColorIndexNone — No color.
The color is specified as an index value into the current color palette, or as one of the following XlColorIndex constants: xlColorIndexAutomatic or xlColorIndexNone.
LineStyle
Returns or sets the line style for the border. Read/write XlLineStyle, xlGray25, xlGray50, xlGray75, or xlAutomatic. Possible return values are xlContinuous — Continuous line, xlDash — Dashed line, xlDashDot — Alternating dashes and dots, xlDashDotDot — Dash followed by two dots, xlDot — Dotted line, xlDouble — Double line, xlLineStyleNone — No line, xlSlantDashDot — Slanted dashes.
xlDouble and xlSlantDashDot do not apply to charts.
ThemeColor
Returns or sets the theme color in the applied color scheme that is associated with the specified object.
Attempting to access a theme color for an object whose color is not currently themed will result in an invalid request run-time error.
TintAndShade
Returns or sets a Single that lightens or darkens a color.
You can enter a number from -1 (darkest) to 1 (lightest) for the TintAndShade property. Zero (0) is neutral. Attempting to set this property to a value less than -1 or more than 1 results in this run-time error: «The specified value is out of range.» This property works for both theme colors and nontheme colors.
Weight
Returns or sets an XlBorderWeight value that represents the weight of the border. Possible return values are xlHairline — Hairline (thinnest border), xlMedium — Medium, xlThick — Thick (widest border), xlThin — Thin.
Источник
VBA Excel. Цвет текста (шрифта) в ячейке
Изменение цвета текста (шрифта) в ячейке рабочего листа Excel с помощью кода VBA. Свойства ячейки (диапазона) .Font.Color, .Font.ColorIndex и .Font.TintAndShade.
Использование цветовой палитры для присвоения цвета тексту в ячейке листа Excel аналогично присвоению цвета фону ячейки, только свойство диапазона .Interior меняем на свойство .Font.
Цвет текста и предопределенные константы
Цвет шрифту в ячейке можно присвоить с помощью предопределенных констант:
Напомню, что вместо индексов строк и столбцов можно использовать переменные. Список предопределенных констант смотрите здесь.
Цвет шрифта и модель RGB
Для изменения цвета текста в ячейке можно использовать цветовую модель RGB:
Аргументы функции RGB могут принимать значения от 0 до 255. Если все аргументы равны 0, цвет — черный, если все аргументы равны 255, цвет — белый. Функция RGB преобразует числовые значения основных цветов (красного, зеленого и синего) в индекс основной палитры.
Список стандартных цветов с RGB-кодами смотрите в статье: HTML. Коды и названия цветов.
Свойство .Font.ColorIndex
Свойство .Font.ColorIndex может принимать значения от 1 до 56. Это стандартная ограниченная палитра, которая существовала до Excel 2007 и используется до сих пор. Посмотрите примеры:
Таблица соответствия значений ограниченной палитры цвету:
Стандартная палитра Excel из 56 цветов
Подробнее о стандартной палитре Excel смотрите в статье: Стандартная палитра из 56 цветов.
Источник
Tintandshade vba excel описание
Этот объект имеется у любого другого объекта имеющего границу или несколько границ (сторон или граней объекта).
Следующий пример изменяет тип линии строки тенденции на активной диаграмме.
Используйте Borders (index ) , где index идентифицирует отдельную границу в объекте.
Следующий пример выбирает цвет нижней границы ячеек A1:G1.
Borders(xlEdgeBottom).Color = RGB(255, 0, 0)
Index может быть одним из следующих значений константы XlBordersIndex :
Application Когда используется без объектного спецификатора, это свойство возвращает объект Application , который представляет приложение Microsoft Excel . Когда используется с объектным спецификатором, это свойство возвращает объект Application , который представляет создателя указанного объекта (Вы можете использовать это свойство с объектом OLE Automation , чтобы возвратить приложение того объекта). Только для чтения Color
Этот пример выбирает цвет меток на оси значения в диаграмме Chart1.
Устанавливает значение для цвета границы
Цвет указан как индексное значение в текущей цветовой палитре, или как один из следующих константы XlColorIndex:
· xlColorIndexAutomatic =-4105 – автоматические цвета
· xlColorIndexNone = -4142 – нет цветов
Этот пример выбирает цвет главных сеток для оси значения в Chart1.
If .HasMajorGridlines Then
‘изменить цвет границ объекта на синий
End With LineStyle
Возвращения тип линии для границы.
xlGray25 , xlGray50 , xlGray75 , xlAutomatic или
xlDouble и xlSlantDashDot не применяются к диаграммам.
Этот пример помещает границу вокруг области диаграммы и графической области Chart1
End With Parent Возвращает родительский объект для указанного объекта. Только для чтения. ThemeColor
Возвращает цвет темы в прикладной цветовой схеме, которая связана с указанным объектом.
Добавлена в версии: Excel 2007
объект.ThemeColor TintAndShade
Вы можете ввести число от-1 (самый темный) к 1 (самый светлый) для свойства TintAndShade . Нуль (0) нейтрален.
Установка значения меньше чем-1 или больше чем 1 приведет к ошибке » The specified value is out of range » (указанное значение вне диапазона). Weight
Возвращает значение XlBorderWeight , которое представляет вес (толщину) границы.
Этот пример устанавливает вес границы для овала один на Sheet1.
Источник
VBA Excel. Программное создание границ ячеек
Программное создание границ ячеек произвольного диапазона с помощью кода VBA Excel. Свойство Borders объекта Range. Создание границ одной ячейки. Код макроса.
Программное создание границ ячеек
Если записать макрос добавления границ к ячейкам какого-нибудь диапазона, то в тексте макроса будет сгенерировано очень много строк с указанием различных параметров. Создать сетку из границ ячеек с параметрами «по умолчанию» можно гораздо проще.
Создание границ одной ячейки
Создать границы ячейки (только для одной ячейки) в VBA Excel можно следующим образом:
Пример кода записанного макроса
Запись макроса: включаем запись, выбираем диапазон «A1:E9», на панели инструментов выбираем значок «Все границы», останавливаем запись. И это все наши выполненные действия, а в результате получаем следующий код:
Конечно, можно использовать в своих программах код, сгенерированный при записи макроса, который будет прекрасно работать. Вот только нужны ли в самописном коде такие нагромождения лишних строк?
Макросы можно и нужно использовать, когда вы не знаете название нужного свойства или его значения, а после записи макроса открываете модуль и все перед глазами. Это касается не только создания границ ячеек, но и всех остальных случаев, когда предполагаемые действия можно записать с помощью макроса.
Создание и удаление диагональных линий
Диагональные линии не относятся к границам ячеек, но принцип работы с ними тот же. Отличие заключается в том, что для отображения и удаления диагональных линий, их необходимо указывать явно:
Расположение границ ячеек и диапазонов
Расположение границ по краям и внутри ячеек и диапазонов описывают константы из коллекции XlBordersIndex.
Список констант XlBordersIndex:
Константа | Значение | Описание |
---|---|---|
xlDiagonalDown | 5 | Диагональная линия от верхнего левого угла к нижнему правому углу в каждой ячейке диапазона. |
xlDiagonalUp | 6 | Диагональная линия от нижнего левого угла к правому верхнему углу в каждой ячейке диапазона. |
xlEdgeBottom | 9 | Граница по нижнему краю диапазона. |
xlEdgeLeft | 7 | Граница по левому краю диапазона. |
xlEdgeRight | 10 | Граница по правому краю диапазона. |
xlEdgeTop | 8 | Граница по верхнему краю диапазона. |
xlInsideHorizontal | 12 | Горизонтальные границы для всех ячеек в диапазоне, за исключением внешних границ диапазона. |
xlInsideVertical | 11 | Вертикальные границы для всех ячеек в диапазоне, за исключением внешних границ диапазона. |
Толщина границ ячеек и диапазонов
Толщину границ по краям и внутри ячеек и диапазонов описывают константы из коллекции XlBorderWeight.
Список констант XlBorderWeight:
Константа | Значение | Описание |
---|---|---|
xlHairline | 1 | Очень тонкая граница |
xlThin | 2 | Тонкая граница (по умолчанию) |
xlMedium | -4138 | 3* | Граница средней толщины |
xlThick | 4 | Толстая граница |
* У меня, в Excel 2016, константе xlMedium соответствует не только числовое значение -4138, но и 3.
Стили границ (типы линий)
Стили границ по краям и внутри ячеек и диапазонов описывают константы из коллекции XlLineStyle.
Список констант XlLineStyle:
Константа | Значение | Описание |
---|---|---|
xlContinuous | 1 | Непрерывная линия |
xlDash | -4115 | Штриховая линия |
xlDashDot | 4 | Чередование точек и тире |
xlDashDotDot | 5 | Чередование двух точек и тире |
xlDot | -4118 | Пунктирная линия |
xlDouble | -4119 | Двойная линия |
xlLineStyleNone | -4142 | Нет границы (удаление границы) |
xlSlantDashDot | 13 | Линия, разрезанная двойными слешами |
Применяем разные типы линий к разным сторонам выделенного диапазона:
Источник
Объект FormatCondition (Excel)
Представляет условный формат.
Замечания
Объект FormatCondition является членом коллекции FormatConditions . Коллекция FormatConditions теперь может содержать более трех условных форматов для заданного диапазона.
Используйте метод Add объекта FormatConditions , чтобы создать новый условный формат. Если диапазон имеет несколько форматов, можно использовать метод Modify для изменения одного из форматов или метод Delete для удаления формата, а затем использовать метод Add для создания нового формата.
Используйте свойства Шрифт, Границы и Интерьер объекта FormatCondition для управления внешним видом отформатированных ячеек. Некоторые свойства этих объектов не поддерживаются объектной моделью условного формата. Некоторые свойства, которые можно использовать с условным форматированием, перечислены в следующей таблице.
Объект | Свойства, которые можно использовать с условным форматированием |
---|---|
Font | Bold, Color, ColorIndex, FontStyle, Italic, Strikethrough, ThemeColor, ThemeFont, TintAndShade и Подчеркивание
Стили подчеркивания учета использовать нельзя. |
Borders | Можно использовать следующие границы (все остальные не поддерживаются): xlBottom, xlLeft, xlRight, xlTop.
Можно использовать следующие стили границ (все остальные не поддерживаются): xlLineStyleNone, xlContinuous, xlDash, xlDot, xlDashDot, xlDashDot, xlDashDot, xlGray50, xlGray75 и xlGray25. Можно использовать следующие весы границ (все остальные не поддерживаются): xlHairline и xlThin. |
Interior | Color, ColorIndex, Gradient, Pattern, PatternColor, PatternColorIndex, PatternThemeColor, PatternTintAndShade, ThemeColor и TintAndShade. |
Пример
Используйте FormatConditions (index), где index — это номер индекса условного формата, чтобы вернуть объект FormatCondition . В следующем примере задаются свойства формата для существующего условного формата для ячеек E1:E10.
Методы
Свойства
См. также
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Источник
VBA Excel. Цвет текста (шрифта) в ячейке
Автор Время не ждёт Опубликовано 21.03.2018
Изменение цвета текста (шрифта) в ячейке рабочего листа Excel с помощью кода VBA. Свойства ячейки (диапазона) .Font.Color, .Font.ColorIndex и .Font.TintAndShade.
Использование цветовой палитры для присвоения цвета тексту в ячейке листа Excel аналогично присвоению цвета фону ячейки , только свойство диапазона .Interior меняем на свойство .Font.
- Цвет текста и предопределенные константы
- Цвет шрифта и модель RGB
- Свойство .Font.ColorIndex
- Основная палитра
- Отрицательные значения свойства .Font.Color
- Свойство .Font.TintAndShade
Цвет текста и предопределенные константы
Цвет шрифту в ячейке можно присвоить с помощью предопределенных констант:
1 2 3 |
Range(«A1:C3»).Font.Color = vbGreen Range(Cells(4, 1), Cells(6, 3)).Font.Color = vbBlue Cells(7, 1).Font.Color = vbRed |
Напомню, что вместо индексов строк и столбцов можно использовать переменные. Список предопределенных констант смотрите здесь .
Цвет шрифта и модель RGB
Для изменения цвета текста в ячейке можно использовать цветовую модель RGB:
1 2 |
Range(«A1»).Font.Color = RGB(200, 150, 250) Cells(2, 1).Font.Color = RGB(200, 150, 100) |
Аргументы функции RGB могут принимать значения от 0 до 255. Если все аргументы равны 0, цвет — черный, если все аргументы равны 255, цвет — белый. Функция RGB преобразует числовые значения основных цветов (красного, зеленого и синего) в индекс основной палитры.
Свойство .Font.ColorIndex
Свойство .Font.ColorIndex может принимать значения от 1 до 56. Это стандартная ограниченная палитра, которая существовала до Excel 2007 и используется до сих пор. Посмотрите примеры:
1 2 |
Range(«A1:D6»).Font.ColorIndex = 5 Cells(1, 6).Font.ColorIndex = 12 |
Таблица соответствия значений ограниченной палитры цвету:
Стандартная палитра Excel из 56 цветов
Основная палитра
Основная палитра, начиная c Excel 2007, состоит из 16777216 цветов. Свойство .Font.Color может принимать значения от 0 до 16777215, причем 0 соответствует черному цвету, а 16777215 — белому.
1 2 3 |
Cells(1, 1).Font.Color = 0 Cells(2, 1).Font.Color = 6777215 Cells(3, 1).Font.Color = 4569325 |
Отрицательные значения свойства .Font.Color
При записи в Excel макрорекордером макроса с присвоением шрифту цвета используются отрицательные значения свойства .Font.Color, которые могут быть в пределах от -16777215 до -1. Отрицательные значения соответствуют по цвету положительному значению, равному сумме наибольшего индекса основной палитры и данного отрицательного значения. Например, отрицательное значение -8257985 соответствует положительному значению 8519230, являющегося результатом выражения 16777215 + (-8257985). Цвета текста двух ячеек из следующего кода будут одинаковы:
1 2 |
Cells(1, 1).Font.Color = -8257985 Cells(2, 1).Font.Color = 8519230 |
Свойство .Font.TintAndShade
Еще при записи макроса с присвоением шрифту цвета макрорекордером добавляется свойство .Font.TintAndShade, которое осветляет или затемняет цвет и принимает следующие значения:
- -1 — затемненный;
- 0 — нейтральный;
- 1 — осветленный.
При тестировании этого свойства в Excel 2016, сравнивая затемненные и осветленные цвета, разницы не заметил. Сравните сами:
1 2 3 4 |
Range(Cells(1, 1), Cells(3, 1)).Font.Color = 37985 Cells(1, 1).Font.TintAndShade = -1 Cells(2, 1).Font.TintAndShade = 0 Cells(3, 1).Font.TintAndShade = 1 |
При тестировании в первых трех ячейках первого столбца должен быть одинаковый текст для удобства сравнения оттенков. Опубликовано 21.03.2018 Автор Время не ждёт Рубрики VBA Excel
title | keywords | f1_keywords | ms.prod | api_name | ms.assetid | ms.date | ms.localizationpriority |
---|---|---|---|---|---|---|---|
Border.TintAndShade property (Excel) |
vbaxl10.chm547078 |
vbaxl10.chm547078 |
excel |
Excel.Border.TintAndShade |
3ec15506-3ba6-a173-a11b-d17448fcdb1b |
03/07/2019 |
medium |
Border.TintAndShade property (Excel)
Returns or sets a Single that lightens or darkens a color.
Syntax
expression.TintAndShade
expression A variable that represents a Border object.
Remarks
You can enter a number from -1 (darkest) to 1 (lightest) for the TintAndShade property. Zero (0) is neutral.
Attempting to set this property to a value less than -1 or more than 1 results in this run-time error: «The specified value is out of range.» This property works for both theme colors and nontheme colors.
[!IMPORTANT]
Note that the visual properties of a Border object are interlocked; that is, changing one property can induce changes in another. In most cases, the induced changes serve to make the border visible (which may or may not be desirable). However, other (more unexpected) results are possible. For an example, see the Border object.
[!includeSupport and feedback]
TintAndShade Property
Returns or sets a Single that lightens or darkens the color of a specified shape. Read/write.
expression.TintAndShade
expression Required. An expression that returns one of the objects in the Applies To list.
Remarks
You can enter a number from -1 (darkest) to 1 (lightest) for the TintAndShade property, 0 (zero) being neutral.
Example
This example creates a new shape in the active document, sets the fill color, and lightens the color shade.
Sub PrinterPlate()
Dim s As Shape
Set s = ActiveSheet.Shapes.AddShape( _
Type:=msoShapeHeart, Left:=150, _
Top:=150, Width:=250, Height:=250)
With s.Fill.ForeColor
.CMYK = 16111872
.TintAndShade = 0.3
.OverPrint = msoTrue
.Ink(Index:=1) = 0
.Ink(Index:=2) = 1
.Ink(Index:=3) = 1
.Ink(Index:=4) = 0
End With
End Sub
Изменение цвета текста (шрифта) в ячейке рабочего листа Excel с помощью кода VBA. Свойства ячейки (диапазона) .Font.Color, .Font.ColorIndex и .Font.TintAndShade.
Использование цветовой палитры для присвоения цвета тексту в ячейке листа Excel аналогично присвоению цвета фону ячейки, только свойство диапазона .Interior меняем на свойство .Font.
Цвет текста и предопределенные константы
Цвет шрифту в ячейке можно присвоить с помощью предопределенных констант:
Range(«A1:C3»).Font.Color = vbGreen Range(Cells(4, 1), Cells(6, 3)).Font.Color = vbBlue Cells(7, 1).Font.Color = vbRed |
Напомню, что вместо индексов строк и столбцов можно использовать переменные. Список предопределенных констант смотрите здесь.
Цвет шрифта и модель RGB
Для изменения цвета текста в ячейке можно использовать цветовую модель RGB:
Range(«A1»).Font.Color = RGB(200, 150, 250) Cells(2, 1).Font.Color = RGB(200, 150, 100) |
Аргументы функции RGB могут принимать значения от 0 до 255. Если все аргументы равны 0, цвет — черный, если все аргументы равны 255, цвет — белый. Функция RGB преобразует числовые значения основных цветов (красного, зеленого и синего) в индекс основной палитры.
Список стандартных цветов с RGB-кодами смотрите в статье: HTML. Коды и названия цветов.
Свойство .Font.ColorIndex
Свойство .Font.ColorIndex может принимать значения от 1 до 56. Это стандартная ограниченная палитра, которая существовала до Excel 2007 и используется до сих пор. Посмотрите примеры:
Range(«A1:D6»).Font.ColorIndex = 5 Cells(1, 6).Font.ColorIndex = 12 |
Таблица соответствия значений ограниченной палитры цвету:
Стандартная палитра Excel из 56 цветов
Подробнее о стандартной палитре Excel смотрите в статье: Стандартная палитра из 56 цветов.
Свойство .Font.ThemeColor
Свойство .Font.ThemeColor может принимать числовые или текстовые значения констант из коллекции MsoThemeColorIndex:
Range(«A1»).Font.ThemeColor = msoThemeColorHyperlink Cells(2, 1).Font.ThemeColor = msoThemeColorAccent4 |
Основная палитра
Основная палитра, начиная 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
При записи в Excel макрорекордером макроса с присвоением шрифту цвета используются отрицательные значения свойства .Font.Color, которые могут быть в пределах от -16777215 до -1. Отрицательные значения соответствуют по цвету положительному значению, равному сумме наибольшего индекса основной палитры и данного отрицательного значения. Например, отрицательное значение -8257985 соответствует положительному значению 8519230, являющегося результатом выражения 16777215 + (-8257985). Цвета текста двух ячеек из следующего кода будут одинаковы:
Cells(1, 1).Font.Color = —8257985 Cells(2, 1).Font.Color = 8519230 |
Свойство .Font.TintAndShade
Еще при записи макроса с присвоением шрифту цвета макрорекордером добавляется свойство .Font.TintAndShade, которое осветляет или затемняет цвет и принимает следующие значения:
- -1 — затемненный;
- 0 — нейтральный;
- 1 — осветленный.
При тестировании этого свойства в Excel 2016, сравнивая затемненные и осветленные цвета, разницы не заметил. Сравните сами:
Sub Test() With Range(Cells(1, 1), Cells(3, 1)) .Value = «Сравниваем оттенки» .Font.Color = 37985 End With Cells(1, 1).Font.TintAndShade = —1 Cells(2, 1).Font.TintAndShade = 0 Cells(3, 1).Font.TintAndShade = 1 End Sub |
В первые три ячейки первого столбца записывается одинаковый текст для удобства сравнения оттенков.
Разноцветный текст в ячейке
Отдельным частям текста в ячейке можно присвоить разные цвета. Для этого используется свойство Range.Characters:
Sub Test() With Range(«A1») .Font.Color = vbBlack .Value = «Океан — Солнце — Оазис» .Font.Size = 30 .Characters(1, 5).Font.Color = vbBlue .Characters(9, 6).Font.Color = RGB(255, 230, 0) .Characters(18, 5).Font.Color = RGB(119, 221, 119) End With End Sub |
Результат работы кода: