עיצוב מותנה מאפשר לעצב תאים כך שהמראה שלהם ישתנה באופן דינמי בהתאם לערך שהם מכילים, או לערכים בתאים אחרים. יש הרבה יישומים אפשריים לעיצוב מותנה, כולל:
- להדגיש תאים שמעל סף מסוים (לדוגמה, להשתמש בטקסט מודגש לכל העסקאות שמעל 2,000$).
- לעצב את התאים כך שהצבע שלהם ישתנה בהתאם לערך שלהם (לדוגמה, להחיל רקע אדום עז יותר ככל שהסכום עולה על 2,000$).
- לעצב תאים באופן דינמי על סמך התוכן של תאים אחרים (לדוגמה, להדגיש את הכתובת של נכסים ששדה 'זמן שיווק' שלהם גדול מ-90 יום).
אפשר אפילו לעצב תאים על סמך הערך שלהם ושל תאים אחרים. לדוגמה, אפשר לעצב טווח של תאים על סמך הערך שלהם בהשוואה לערך החציוני של הטווח:
איור 1. עיצוב כדי להדגיש ערכים מעל או מתחת לגיל החציון.
בדוגמה הזו, הפורמט של התאים בכל שורה נקבע בהתאם להשוואה בין הערך בעמודה age
לבין הערך החציוני של כל הגילאים. שורות שבהן הגיל גבוה מהחציון מוצגות בטקסט אדום, ושורות שבהן הגיל נמוך מהחציון מוצגות ברקע אדום. בשתי השורות יש ערך של age
שתואם לגיל החציוני (48), והתאים האלה לא מקבלים פורמט מיוחד. (קוד המקור שיוצר את הפורמט המותנה הזה מופיע בדוגמה שבהמשך).
כללי עיצוב מותנה
עיצוב מותנה מופיע באמצעות כללי עיצוב. כל גיליון אלקטרוני מאחסן רשימה של הכללים האלה ומחיל אותם באותו סדר שבו הם מופיעים ברשימה. באמצעות Google Sheets API אפשר להוסיף, לעדכן ולמחוק את כללי הפורמט האלה.
כל כלל מציין טווח יעד, סוג כלל, תנאים להפעלת הכלל וכל פורמט שרוצים להחיל.
טווח היעד – יכול להיות תא יחיד, טווח של תאים או כמה טווחים.
סוג הכלל – יש שתי קטגוריות של כללים:
- כללים בוליאניים מחילים פורמט רק אם מתקיימים קריטריונים ספציפיים.
- כללי שיפוע מחשבים את צבע הרקע של תא על סמך הערך של התא.
התנאים שנבדקים והפורמטים שאפשר להחיל שונים בכל אחד מסוגי הכללים האלה, כפי שמפורט בקטעים הבאים.
כללים בוליאניים
המאפיין 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
מגדיר צבע ואת הערך התואם שלו. קבוצה של שלוש נקודות מגדירה שיפוע צבע.
ניהול כללים של עיצוב מותנה
כדי ליצור, לשנות או למחוק כללים של עיצוב מותנה, משתמשים ב-method spreadsheets.batchUpdate
עם סוג הבקשה המתאים:
מוסיפים כללים לרשימה במדד הנתון באמצעות
AddConditionalFormatRuleRequest
.החלפת כללים ברשימה או שינוי הסדר שלהם ברשימה לפי האינדקס הנתון באמצעות הפקודה
UpdateConditionalFormatRuleRequest
.הסרת כללים מהרשימה לפי האינדקס הנתון באמצעות הפונקציה
DeleteConditionalFormatRuleRequest
.
דוגמה
בדוגמה הבאה מוסבר איך ליצור את הפורמטה המותנית שמוצגת בצילום המסך בחלק העליון של הדף. דוגמאות נוספות מופיעות בדף הדוגמאות של עיצוב מותנה.