Условное форматирование позволяет форматировать ячейки так, чтобы их внешний вид динамически менялся в зависимости от содержащихся в них значений или значений в других ячейках. Существует множество возможных применений условного форматирования, включая следующие:
- Выделите ячейки, превышающие определенный порог (например, используя жирный текст для всех транзакций свыше 2000 долларов США).
- Отформатируйте ячейки так, чтобы их цвет менялся в зависимости от их значения (например, применив более интенсивный красный фон по мере увеличения суммы свыше 2000 долларов США).
- Динамически форматируйте ячейки на основе содержимого других ячеек (например, выделяя адрес объектов недвижимости, у которых поле «срок нахождения на рынке» > 90 дней).
Вы даже можете форматировать ячейки на основе их значений и значений других ячеек. Например, можно отформатировать диапазон ячеек, сравнив их значения с медианой диапазона:
Рисунок 1. Форматирование для выделения значений выше или ниже медианного возраста.
В этом примере ячейки в каждой строке отформатированы в соответствии со значением в столбце age
по сравнению с медианным значением всех возрастов. Строки, в которых возраст выше медианы, имеют красный текст, а строки, в которых возраст ниже медианы, имеют красный фон. В двух строках значение age
совпадает со медианным (48), и эти ячейки не получают специального форматирования. (Исходный код, создающий это условное форматирование, см. в примере ниже.)
Правила условного форматирования
Условное форматирование выражается с помощью правил форматирования . Каждая электронная таблица хранит список этих правил и применяет их в том же порядке, в котором они указаны в списке. API Google Таблиц позволяет добавлять, обновлять и удалять эти правила форматирования.
Каждое правило определяет целевой диапазон, тип правила, условия срабатывания правила и любое применяемое форматирование.
Целевой диапазон — это может быть одна ячейка, диапазон ячеек или несколько диапазонов.
Тип правила — существует две категории правил:
- Булевы правила применяют формат только при соблюдении определенных критериев.
- Правила градиента рассчитывают цвет фона ячейки на основе значения ячейки.
Оцениваемые условия и форматы, которые можно применять, различны для каждого из этих типов правил, как подробно описано в следующих разделах.
Булевы правила
BooleanRule
определяет, следует ли применять определённый формат, на основе BooleanCondition
, которое принимает значение true
или false
. Логическое правило имеет вид:
{
"condition": {
object(BooleanCondition)
},
"format": {
object(CellFormat)
},
}
Условие может использовать встроенный ConditionType
или пользовательскую формулу для более сложных оценок.
Встроенные типы данных позволяют применять форматирование в соответствии с числовыми пороговыми значениями, сравнением с текстом или с учётом того, заполнена ли ячейка. Например, NUMBER_GREATER
означает, что значение ячейки должно быть больше значения условия. Правила всегда применяются к целевой ячейке.
Пользовательская формула — это особый тип условия, позволяющий применять форматирование в соответствии с произвольным выражением, что также позволяет выполнять оценку любой ячейки, а не только целевой. Формула условия должна быть true
.
Чтобы определить форматирование, применяемое логическим правилом, вы используете подмножество типа CellFormat
для определения:
- Будет ли текст в ячейке жирным, курсивом или зачеркнутым.
- Цвет текста в ячейке.
- Цвет фона ячейки.
Правила градиента
GradientRule
определяет диапазон цветов, соответствующих диапазону значений. Правило градиента имеет вид:
{
"minpoint": {
object(InterpolationPoint)
},
"midpoint": {
object(InterpolationPoint)
},
"maxpoint": {
object(InterpolationPoint)
},
}
Каждая InterpolationPoint
определяет цвет и соответствующее ему значение. Набор из трёх точек определяет цветовой градиент.
Управление правилами условного форматирования
Чтобы создать, изменить или удалить правила условного форматирования, используйте метод spreadsheets.batchUpdate
с соответствующим типом запроса:
Добавьте правила в список по указанному индексу с помощью
AddConditionalFormatRuleRequest
.Замените или переупорядочьте правила в списке по указанному индексу, используя
UpdateConditionalFormatRuleRequest
.Удалить правила из списка по указанному индексу с помощью
DeleteConditionalFormatRuleRequest
.
Пример
В следующем примере показано, как создать условное форматирование, показанное на снимке экрана в верхней части этой страницы. Дополнительные примеры см. на странице «Примеры условного форматирования» .