Formatowanie warunkowe pozwala formatować komórki tak, 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ń, w tym:
- Zaznaczaj komórki powyżej określonego progu (np. za pomocą pogrubionego tekstu w przypadku wszystkich transakcji powyżej 2000 USD).
- Formatuj komórki tak, aby ich kolor zmieniał się w zależności od wartości (np. stosując bardziej intensywny czerwony kolor tła,gdy kwota przekracza 2000 USD).
- Formatowanie komórek dynamicznie na podstawie zawartości innych komórek (np. wyróżnianie adresów nieruchomości, których pole „Czas na rynku” zawiera wartość większą niż 90 dni).
Możesz nawet formatować komórki na podstawie ich wartości i wartości innych komórek. Na przykład możesz sformatować zakres komórek na podstawie ich wartości w porównaniu z wartością średnią tego zakresu:
Rysunek 1. Formatowanie służące do wyróżniania wartości powyżej lub poniżej mediany wieku.
W tym przykładzie komórki w każdym wierszu są formatowane zgodnie z wartością w kolumnie age
w porównaniu z medianą wartością wszystkich grup wiekowych. Wiersze, których wiek jest wyższy niż mediana, mają czerwony tekst, a te poniżej mediany – czerwone tło. Dwa z tych wierszy mają wartość age
odpowiadającą średniej długości życia (48 lat), a te komórki nie mają specjalnego formatowania. (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 tej samej kolejności, w jakiej się znajdują 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 aktywacji oraz formatowanie.
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ą format 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, oraz formaty, które możesz zastosować, różnią się w zależności od typu reguły. Szczegółowe informacje znajdziesz w następnych sekcjach.
Reguły logiczne
Element BooleanRule
określa, czy zastosować określony format na podstawie elementu BooleanCondition
, który ma wartość true
lub false
. Reguła logiczna ma postać:
{
"condition": {
object(BooleanCondition)
},
"format": {
object(CellFormat)
},
}
Warunek może używać wbudowanej funkcji ConditionType
lub formuły niestandardowej w przypadku bardziej złożonych ocen.
Wbudowane typy umożliwiają zastosowanie formatowania na podstawie progów liczbowych, porównań tekstowych lub tego, 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 oceniane na podstawie komórki docelowej.
Formuła niestandardowa to specjalny typ warunku, który umożliwia zastosowanie formatowania zgodnie z dowolnym wyrażeniem. Umożliwia on również ocenę dowolnej komórki, a nie tylko komórki docelowej. Formuła warunku musi zwracać wartość true
.
Aby zdefiniować formatowanie stosowane przez regułę logiczną, użyj podzbioru typu CellFormat
, aby zdefiniować:
- Czy tekst w komórce jest pogrubiony, kursywą czy przekreślony.
- Kolor tekstu w komórce.
- Kolor tła komórki.
Reguły gradientu
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 odpowiadającą mu wartość. Gradient kolorów jest definiowany przez zestaw 3 punktów.
Zarządzanie regułami formatowania warunkowego
Aby utworzyć, zmodyfikować lub usunąć reguły formatowania warunkowego, użyj metody spreadsheets.batchUpdate
z odpowiednim typem żądania:
Dodaj reguły do listy pod podanym indeksem, używając funkcji
AddConditionalFormatRuleRequest
.Za pomocą opcji
UpdateConditionalFormatRuleRequest
możesz zastąpić reguły na liście lub zmienić ich kolejność.Użyj instrukcji
DeleteConditionalFormatRuleRequest
, aby usunąć reguły z listy w danym indeksie.
Przykład
Z poniższego przykładu dowiesz się, jak utworzyć formatowanie warunkowe widoczne na zrzucie ekranu u góry tej strony. Więcej przykładów znajdziesz na stronie z próbkami Formatowanie warunkowe.