Google Sheets API מאפשר לעדכן את העיצוב של תאים וטווחים בתוך גיליונות אלקטרוניים. הדוגמאות בדף הזה ממחישות איך אפשר לבצע כמה פעולות עיצוב נפוצות בעזרת Sheets API. תוכלו למצוא דוגמאות נוספות לעיצוב מותנה בדף המתכון של עיצוב מותנה.
סוגים מסוימים של בקשות עשויים להחזיר תגובות במהלך עדכון גיליון אלקטרוני.
הן מוחזרות במערך, ולכל תגובה יהיה אותו אינדקס כמו הבקשה המתאימה. לחלק מהבקשות אין תשובות, והתגובה להן ריקה. מבנה התשובות של הדוגמאות האלה מופיע בקטע spreadsheets.batchUpdate
.
הדוגמאות האלה מוצגות בפורמט של בקשות HTTP ניטרליות מבחינת שפה. על מנת ללמוד כיצד ליישם עדכון ברצף בשפות שונות באמצעות ספריות הלקוח של Google API, קראו את המאמר עדכון גיליונות אלקטרוניים.
בדוגמאות האלה, ערכי ה-placeholder SPREADSHEET_ID ו-SHEET_ID מציינים איפה הייתם מספקים את המזהים האלה. המזהה של הגיליון האלקטרוני מופיע בכתובת ה-URL של הגיליון האלקטרוני. אפשר לאתר את מזהה הגיליון באמצעות השיטה spreadsheets.get
. הטווחים מצוינים באמצעות סימון A1. טווח לדוגמה הוא Sheet1!A1:D5.
בסרטון שלמעלה מוסבר איך לעצב תאים בגיליון אלקטרוני בדרכים שונות, כולל: יצירת שורות קפואות, הדגשת תאים, הטמעת עיצוב מטבע, ביצוע אימות תאים והגבלת ערכי תאים.
עריכה של גבולות תאים
דוגמת הקוד הבאה spreadsheets.batchUpdate
ממחישה איך להשתמש ב-UpdateBordersRequest
כדי לתת לכל תא בטווח A1:F10 גבול מקווקו וכחול בחלק העליון והתחתון. השדה innerHorizontal
יוצר גבולות אופקיים בתוך הטווח.
אם משמיטים את השדה, הגבולות יתווספו רק לחלק העליון והתחתון של כל הטווח.
פרוטוקול הבקשה מוצג בהמשך.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "updateBorders": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 0, "endColumnIndex": 6 }, "top": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, "bottom": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, "innerHorizontal": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, } } ] }
עיצוב של שורת כותרת
דוגמת הקוד הבאה של spreadsheets.batchUpdate
ממחישה איך להשתמש ב-RepeatCellRequest
כדי לעצב שורת כותרת בגיליון. הבקשה הראשונה מעדכנת את צבע הטקסט, את צבע הרקע, את גודל הגופן של הטקסט ואת ההצדקה של הטקסט, וגורמת לטקסט מודגש. אם משמיטים את האינדקס של העמודה בשדה range
, המערכת מעצבת את כל השורה. הבקשה השנייה מתאימה את מאפייני הגיליון כך ששורת הכותרת תקפא.
פרוטוקול הבקשה מוצג בהמשך.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 1 }, "cell": { "userEnteredFormat": { "backgroundColor": { "red": 0.0, "green": 0.0, "blue": 0.0 }, "horizontalAlignment" : "CENTER", "textFormat": { "foregroundColor": { "red": 1.0, "green": 1.0, "blue": 1.0 }, "fontSize": 12, "bold": true } } }, "fields": "userEnteredFormat(backgroundColor,textFormat,horizontalAlignment)" } }, { "updateSheetProperties": { "properties": { "sheetId": SHEET_ID, "gridProperties": { "frozenRowCount": 1 } }, "fields": "gridProperties.frozenRowCount" } } ] }
מזג תאים
דוגמת הקוד הבאה של spreadsheets.batchUpdate
מראה איך להשתמש ב-MergeCellsRequest
כדי למזג תאים. הבקשה הראשונה ממזגת את טווח A1:B2 לתא אחד. הבקשה השנייה ממזגת את העמודות ב-A3:B6 ומשאירה את השורות מופרדות.
פרוטוקול הבקשה מוצג בהמשך.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "mergeCells": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 2, "startColumnIndex": 0, "endColumnIndex": 2 }, "mergeType": "MERGE_ALL" } }, { "mergeCells": { "range": { "sheetId": SHEET_ID, "startRowIndex": 2, "endRowIndex": 6, "startColumnIndex": 0, "endColumnIndex": 2 }, "mergeType": "MERGE_COLUMNS" } }, ] }
הגדרה מותאמת אישית של תאריך ושעה או פורמט עשרוני לטווח
דוגמת הקוד הבאה spreadsheets.batchUpdate
מראה איך להשתמש ב-RepeatCellRequest
כדי לעדכן תאים כך שיכללו פורמטים מותאמים אישית של תאריך ושעה בעתיד. הבקשה הראשונה מספקת לתאים בטווח A1:A10 את הפורמט המותאם אישית של תאריך ושעה hh:mm:ss am/pm,
ddd mmm dd yyyy
. דוגמה לתאריך ושעה בפורמט זה: "02:05:07 PM, Sun Apr
03 2016".
הבקשה השנייה מעניקה לתאים ב-B1:B10 את פורמט המספרים המותאם אישית #,##0.0000
, שלפיו צריך לקבץ את המספרים באמצעות מפרידים בפסיק, שיהיו 4 ספרות אחרי הנקודה העשרונית ולהשמיט את כל האפס בהתחלה מלבד אחד. לדוגמה: המספר "3.14" מעובד כ-"3.1400", ואילו המספר "12345.12345" מוצג כ-"12,345.1235".
פרוטוקול הבקשה מוצג בהמשך.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 0, "endColumnIndex": 1 }, "cell": { "userEnteredFormat": { "numberFormat": { "type": "DATE", "pattern": "hh:mm:ss am/pm, ddd mmm dd yyyy" } } }, "fields": "userEnteredFormat.numberFormat" } }, { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 1, "endColumnIndex": 2 }, "cell": { "userEnteredFormat": { "numberFormat": { "type": "NUMBER", "pattern": "#,##0.0000" } } }, "fields": "userEnteredFormat.numberFormat" } } ] }