Formatowanie warunkowe umożliwia formatowanie komórek w taki sposób, aby ich wygląd zmieniał się dynamicznie w zależności od wartości, które zawierają, lub wartości w innych komórkach. Formatowanie warunkowe ma wiele zastosowań, m.in.:
- Wyróżnij komórki powyżej określonego progu (np. pogrubiając tekst wszystkich transakcji powyżej 2000 PLN).
- Sformatuj komórki tak, aby ich kolor zmieniał się w zależności od wartości (np. zastosuj bardziej intensywne czerwone tło,gdy kwota przekroczy 2000 zł).
- Dynamiczne formatowanie komórek na podstawie zawartości innych komórek (np. wyróżnianie adresu nieruchomości, których pole „czas na rynku” ma wartość > 90 dni).
Możesz nawet formatować komórki na podstawie ich wartości i wartości innych komórek. Możesz na przykład sformatować zakres komórek na podstawie ich wartości w porównaniu z wartością mediany zakresu:
Rysunek 1. Formatowanie wyróżniające wartości powyżej lub poniżej mediany wieku.
W tym przykładzie komórki w każdym wierszu są formatowane w zależności od tego, jak wartość w kolumnie age
wypada na tle mediany wszystkich wartości wieku. Wiersze, w których wiek jest powyżej mediany, mają czerwony tekst, a wiersze, w których wiek jest poniżej mediany, mają czerwone tło. W 2 wierszach wartość age
jest zgodna z medianą wieku (48), a te komórki nie są specjalnie formatowane. (Kod źródłowy, który tworzy to formatowanie warunkowe, znajdziesz w przykładzie poniżej).
Reguły formatowania warunkowego
Formatowanie warunkowe jest wyrażane za pomocą reguł formatowania. Każdy arkusz kalkulacyjny przechowuje listę tych reguł i stosuje je w kolejności, w jakiej pojawiają się na liście. Interfejs Google Sheets API umożliwia dodawanie, aktualizowanie i usuwanie tych reguł formatowania.
Każda reguła określa zakres docelowy, typ reguły, warunki jej wywołania i formatowanie, które ma być zastosowane.
Zakres docelowy – może to być pojedyncza komórka, zakres komórek lub wiele zakresów.
Typ reguły – istnieją 2 kategorie reguł:
- Reguły logiczne stosują formatowanie tylko wtedy, gdy są spełnione określone kryteria.
- Reguły gradientu obliczają kolor tła komórki na podstawie jej wartości.
Warunki, które są oceniane, i formaty, które możesz zastosować, różnią się w zależności od typu reguły. Szczegółowe informacje znajdziesz w sekcjach poniżej.
Reguły logiczne
Pole BooleanRule
określa, czy zastosować konkretny format na podstawie BooleanCondition
, które przyjmuje wartość true
lub false
. Reguła logiczna ma postać:
{
"condition": {
object(BooleanCondition)
},
"format": {
object(CellFormat)
},
}
Warunek może korzystać z wbudowanych funkcji ConditionType
lub z niestandardowej formuły, która umożliwia bardziej złożone oceny.
Wbudowane typy umożliwiają stosowanie formatowania zgodnie z progami liczbowymi, porównaniem tekstu lub tym, czy komórka jest wypełniona. Na przykład NUMBER_GREATER
oznacza, że wartość komórki musi być większa niż wartość warunku. Reguły są zawsze sprawdzane w odniesieniu do komórki docelowej.
Formuła niestandardowa to specjalny typ warunku, który umożliwia zastosowanie formatowania zgodnie z dowolnym wyrażeniem, co pozwala też na ocenę dowolnej komórki, a nie tylko komórki docelowej. Formuła warunku musi mieć wartość true
.
Aby zdefiniować formatowanie stosowane przez regułę logiczną, użyj podzbioru typu CellFormat
, aby określić:
- Czy tekst w komórce jest pogrubiony, zapisany kursywą lub przekreślony.
- Kolor tekstu w komórce.
- Kolor tła komórki.
Reguły gradientu
A
GradientRule
określa zakres kolorów odpowiadający zakresowi wartości. Reguła gradientu ma postać:
{
"minpoint": {
object(InterpolationPoint)
},
"midpoint": {
object(InterpolationPoint)
},
"maxpoint": {
object(InterpolationPoint)
},
}
Każdy element InterpolationPoint
określa kolor i jego wartość. Gradient kolorów jest definiowany przez zestaw 3 punktów.
Zarządzanie regułami formatowania warunkowego
Aby tworzyć, modyfikować lub usuwać reguły formatowania warunkowego, użyj metody
spreadsheets.batchUpdate
z odpowiednim typem żądania:
Dodaj reguły do listy pod danym indeksem za pomocą metody
AddConditionalFormatRuleRequest
.Zastąp lub zmień kolejność reguł na liście pod danym indeksem za pomocą symbolu
UpdateConditionalFormatRuleRequest
.Usuwa reguły z listy pod podanym indeksem za pomocą metody
DeleteConditionalFormatRuleRequest
.
Przykład
Poniższy przykład pokazuje, jak utworzyć formatowanie warunkowe widoczne na zrzucie ekranu u góry tej strony. Więcej przykładów znajdziesz na stronie z przykładowymi formatowaniami warunkowymi.