Условное форматирование позволяет форматировать ячейки таким образом, чтобы их внешний вид динамически менялся в зависимости от содержащегося в них значения или значений в других ячейках. Существует множество возможных применений условного форматирования, включая следующие:
- Выделите ячейки, превышающие определенный порог (например, используя жирный текст для всех транзакций на сумму более 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
.
Пример
В следующем примере показано, как создать условное форматирование, показанное на снимке экрана вверху этой страницы. Дополнительные примеры см. на странице «Примеры условного форматирования» .