Google Sheets הוא פתרון גיליונות אלקטרוניים מבוסס-ענן עם שיתוף פעולה בזמן אמת וכלים מתקדמים להדמיה, לעיבוד ולתקשור של נתונים.
אפשר להרחיב את האפשרויות של Sheets באמצעות תוספים שמשפרים את תהליכי העבודה, יוצרים קישוריות למערכות של צד שלישי ומשלבים את הנתונים ב-Sheets עם אפליקציות אחרות של Google Workspace (כמו Google Slides).
ב-Google Workspace Marketplace אפשר לראות תוספים ל-Sheets שאחרים יצרו.
מה אפשר לעשות
הנה כמה דברים שאפשר לעשות עם תוספים שמרחיבים את היכולות של Sheets:
- לקרוא, לערוך, להמחיש ולעצב נתונים בגיליונות אלקטרוניים ב-Sheets באמצעות שירות הגיליונות האלקטרוניים המובנה של Apps Script. השירות מאפשר גם ליצור ולשנות כללים של עיצוב מותנה ואימות נתונים.
- אפשר להשתמש בשירות המתקדם של Sheets ב-Apps Script כדי לגשת ישירות אל Google Sheets API.
- יוצרים תפריטים בהתאמה אישית ומגדירים כמה ממשקי תיבות דו-שיח וסרגלי צד בהתאמה אישית באמצעות HTML ו-CSS רגילים.
- כוללים בהרחבה הגדרות של פונקציות מותאמות אישית.
- אפשר להשתמש בטריגרים של תוספים שמפעילים פונקציות ספציפיות כשמתרחשים אירועים מסוימים.
תוספים ל-Sheets נבנים באמצעות Apps Script. מידע נוסף על גישה ל-Sheets וניהול שלו באמצעות Apps Script זמין במאמר הרחבת Sheets.
מבנה הגיליון
גיליון אלקטרוני ב-Sheets מורכב מגיליון אחד או יותר. כל גיליון הוא בעצם רשת דו-ממדית של תאים שאפשר לאחסן בהם טקסט, מספרים, קישורים או ערכים אחרים. קבוצה של תא אחד או יותר סמוכים נקראת טווח.
שירות הגיליון האלקטרוני של Apps Script מספק כמה מחלקות לייצוג מבנים ארגוניים ב-Sheets (כמו Sheet ו-Range). אפשר להשתמש במחלקות האלה כדי לקרוא ולשנות את הנתונים וההתנהגות של Sheets.
טריגרים
טריגרים ב-Apps Script מאפשרים להפעיל פונקציה מסוימת בפרויקט סקריפט כשמתקיימים תנאים מסוימים, למשל כשגיליון אלקטרוני נפתח או כשתוסף מותקן.
מידע נוסף על הטריגרים שאפשר להשתמש בהם בתוספים של Sheets ועל ההגבלות שחלות על השימוש בהם זמין במאמר בנושא טריגרים של תוספים.
פונקציות מותאמות אישית
ב-Sheets יש מספר פונקציות מובנות כמו SUM ו-AVERAGE שאפשר להפעיל מתוך תא ב-Sheets. תוספים ל-Sheets יכולים להגדיר פונקציות מותאמות אישית נוספות כדי להשלים את הפונקציות המובנות האלה. כשמשתמש מתקין את התוסף, כל הפונקציות המותאמות אישית המוגדרות שכלולות בתוסף הופכות לזמינות באופן מיידי. יכול להיות שתוסף יכלול רק הגדרות של פונקציות בהתאמה אישית. הדרך העיקרית לשתף עם אחרים הגדרות של פונקציות בהתאמה אישית היא לפרסם תוסף שמכיל את ההגדרות.
יצירת פונקציות מותאמות אישית לתוספים
אפשר להשתמש בכל פונקציה שמוגדרת בפרויקט סקריפט של תוסף כפונקציה בהתאמה אישית. אחרי שמטמיעים את הפונקציה ומתקינים את התוסף, אפשר להפעיל את הפונקציה המותאמת אישית כמו כל פונקציה מובנית אחרת ב-Sheets: בתא בגיליון, מזינים את = ואחריו את שם הפונקציה ואת הפרמטרים הנדרשים. אם אין שגיאות, התוצאה שמוחזרת מהפונקציה מוצבת בתא ב-Sheets, ואם צריך היא גולשת לתאים הסמוכים.
כשיוצרים פונקציות בהתאמה אישית בתוסף, צריך לפעול לפי ההנחיות הכלליות לגבי פונקציות בהתאמה אישית:
- הנחיות למתן שמות לפונקציות
- הגדרת ארגומנטים של פונקציות
- הגדרת הערך המוחזר של הפונקציה
- סוגי נתונים של פונקציות בהתאמה אישית
- הפעלת השלמה אוטומטית באמצעות JSDoc
- פונקציות בהתאמה אישית של שירותים יכולות להשתמש ב
- אופטימיזציה של פונקציות בהתאמה אישית
בנוסף, יש כמה שיקולים מיוחדים לגבי פונקציות מותאמות אישית שמוגדרות בתוספים:
- כשנותנים שם לפונקציה, כדאי ליצור שם ייחודי, שאולי קשור לשם של התוסף. אם שני תוספים או יותר שהותקנו מגדירים פונקציות מותאמות אישית עם אותו שם, המשתמשים יכולים להשתמש רק באחת מהן.
- התוסף צריך להבהיר אילו פונקציות מותאמות אישית הוא מספק. חשוב לספק הערות JSDoc מדויקות לפונקציות המותאמות אישית, כדי ש-Apps Script יוכל להציג למשתמש מידע על השלמה אוטומטית. בנוסף, מומלץ לספק תיעוד נוסף של הפונקציות המותאמות אישית בתוסף עצמו או בדף אינטרנט לתמיכה בתוסף.
- פונקציות מותאמות אישית שלא מסתיימות תוך פחות מ-30 שניות נכשלות עם שגיאת
Internal error executing the custom function. כדי ליצור חוויית משתמש טובה, כדאי להגביל את כמות העיבוד שמתבצעת בפונקציה מותאמת אישית. מבצעים אופטימיזציה של הפונקציה ככל האפשר. - פונקציות מותאמות אישית לא יכולות להשתמש בשירותי Apps Script שדורשים הרשאה, ואם מנסים לעשות זאת, הן נכשלות ומוחזרת השגיאה
You do not have permission to call X service. צריך להשתמש בפונקציה בהתאמה אישית רק בשירותים המותרים. - כל פונקציה בהתאמה אישית ב-Sheets גורמת לקריאה נפרדת לשרתי Apps Script. אם משתמש מנסה להשתמש בפונקציות מותאמות אישית ביותר מדי תאים, יכול להיות שהפונקציות יפעלו לאט. כדי לצמצם את הסיכון הזה, כדאי לשמור על פשטות ככל האפשר בפונקציות המותאמות אישית. אם אתם צריכים שהפונקציה תבצע עיבוד מורכב או ממושך, אל תשתמשו בפונקציה מותאמת אישית – במקום זאת, ספקו את הפונקציונליות הזו באמצעות פריט בתפריט, תיבת דו-שיח או אינטראקציה בסרגל צד.
פקודות מאקרו ב-Sheets
מאקרו מאפשר לכם להקליט פעולות שבוצעו ב-Sheets ולחזור עליהן מאוחר יותר באמצעות מקש קיצור. כשיוצרים מאקרו ב-Sheets, הוא מתווסף כפונקציית מאקרו בפרויקט Apps Script שמקושר ל-Sheets. מידע נוסף על פקודות מאקרו זמין במאמר בנושא פקודות מאקרו ב-Sheets.
לצערנו, אי אפשר להפיץ פקודות מאקרו של Sheets עם תוספים. אם כוללים הגדרת מאקרו במניפסט של תוסף, היא לא זמינה למשתמשים בתוסף הזה.