תוספים ל-Google Sheets עם תוספים

Google Sheets הוא פתרון מבוסס-ענן לגיליונות אלקטרוניים, עם שיתוף פעולה בזמן אמת וכלים חזקים שמאפשרים להציג, לעבד ולהעביר נתונים.

תוכלו להרחיב את Sheets בעזרת תוספים שעוזרים לשפר את תהליכי העבודה בהתאמה אישית, לבסס קישוריות למערכות של צד שלישי ולשלב את הנתונים מ-Sheets באפליקציות אחרות של Google Workspace (כמו Google Slides).

אפשר לראות את התוספים של Sheets שאחרים בנו ב-Google Workspace Marketplace.

מה אפשר לעשות

הנה כמה דברים שאפשר לעשות עם תוסף שמרחיב את Google Sheets:

אפשר ליצור תוספים ל-Sheets באמצעות Apps Script. למידע נוסף על הגישה ל-Google Sheets והניהול שלו באמצעות Apps Script, קראו את המאמר הרחבה של Google Sheets.

מבנה הגיליון

גיליון אלקטרוני של Google Sheets מכיל גיליון אחד או יותר. כל גיליון הוא בעצם רשת דו-ממדית של תאים שבה אפשר לאחסן טקסט, מספרים, קישורים או ערכים אחרים. קבוצה של תא אחד או יותר נקראת range.

שירות הגיליונות האלקטרוניים של Apps Script כולל מספר מחלקות לייצוג מבנים ארגוניים ב-Sheets (למשל Sheet ו-Range). תוכלו להשתמש במחלקות האלה כדי לקרוא ולשנות את הנתונים וההתנהגות ב-Sheets.

גורמים מפעילים

טריגרים של Apps Script מאפשרים לפרויקט להפעיל פונקציה מסוימת כשמתקיימים תנאים מסוימים, למשל כשפותחים גיליון אלקטרוני או כשמתקינים תוסף.

למידע נוסף על הטריגרים שאפשר להשתמש בהם בתוספים של Sheets, תוכלו לקרוא על הטריגרים של התוספים ועל ההגבלות שחלות על השימוש בהם.

פונקציות מותאמות אישית

ב-Google Sheets יש כמה פונקציות מובנות, כמו SUM ו-AVERAGE, שניתן להפעיל מתוך תא ב-Google Sheets. בתוספים של Sheets אפשר להגדיר פונקציות מותאמות אישית נוספות, בנוסף לפונקציות המובנות האלה. כשמשתמש מתקין את התוסף, כל הפונקציות המותאמות אישית שהוגדרו שכלולות בתוסף הופכות לזמינות באופן מיידי. ייתכן שתוסף יכלול רק הגדרות של פונקציות בהתאמה אישית. ההגדרות של פונקציות מותאמות אישית משותפות בעיקר עם אחרים על ידי פרסום תוסף שמכיל את ההגדרות.

יצירת פונקציות בהתאמה אישית של תוספים

כל פונקציה שמוגדרת בפרויקט סקריפט של תוסף יכולה לשמש כפונקציה מותאמת אישית. אחרי שמטמיעים את הפונקציה ומתקינים את התוסף, אפשר לקרוא לפונקציה המותאמת אישית כמו כל פונקציה מובנית אחרת של Sheets: בתא גיליון אלקטרוני, מזינים את הערך = ואחריו את שם הפונקציה ואת הפרמטרים הנדרשים. אם אין שגיאות, התוצאה שהפונקציה מחזירה בתא ב-Sheets, וגולשת לתאים הסמוכים לפי הצורך.

כשיוצרים פונקציות בהתאמה אישית בתוסף, צריך לפעול לפי ההנחיות הכלליות הכלליות ליצירת פונקציות בהתאמה אישית:

בנוסף, יש כמה שיקולים מיוחדים לגבי פונקציות מותאמות אישית שמוגדרות בתוספים:

  • כשאתם נותנים שם לפונקציה, כדאי ליצור שם ייחודי שאולי יהיה קשור לשם של התוסף. אם שני תוספים מותקנים או יותר מגדירים פונקציות מותאמות אישית עם אותו שם, המשתמשים יכולים להשתמש רק באחת מהן.
  • התוסף צריך להסביר בבירור אילו פונקציות מותאמות אישית הוא מספק. חשוב לספק הערות JSDoc מדויקות לפונקציות המותאמות אישית כדי לאפשר ל-Apps Script להציג למשתמש מידע על ההשלמה האוטומטית. כדאי גם לספק תיעוד נוסף של הפונקציות המותאמות אישית בתוסף עצמו או בדף אינטרנט לתמיכה של התוסף.
  • פונקציות בהתאמה אישית שלא מסתיימות תוך פחות מ-30 שניות נכשלות ומוצגת השגיאה Internal error executing the custom function. כדי לספק חוויית משתמש טובה, כדאי להגביל את כמות העיבוד שמבצעים בפונקציה מותאמת אישית. אופטימיזציה של הפונקציה במידת האפשר.
  • פונקציות בהתאמה אישית לא יכולות להשתמש בשירותי Apps Script שנדרשת להם הרשאה, וייכשלו עם השגיאה You do not have permission to call X service כשתנסו לעשות זאת. להשתמש רק בשירותים מותרים בפונקציה בהתאמה אישית.
  • כל פונקציה בהתאמה אישית בגיליון יוצרת קריאה נפרדת לשרתים של Apps Script. אם משתמש מנסה להשתמש בפונקציות בהתאמה אישית ביותר מדי תאים, יכול להיות שהפונקציות יופעלו לאט. כדי לצמצם את התופעה הזו, כדאי להשתמש בפונקציות מותאמות אישית פשוטות ככל האפשר. אם אתם צריכים שהפונקציה תבצע עיבוד מורכב או מורחב, לא כדאי להשתמש בפונקציה מותאמת אישית – צריך לספק את הפונקציונליות הזו באמצעות פריט בתפריט, תיבת דו-שיח או אינטראקציה בסרגל הצד.

פקודות מאקרו ב-Sheets

בעזרת פקודות מאקרו אפשר להקליט פעולות שבוצעו ב-Google Sheets ולחזור עליהן מאוחר יותר באמצעות מקשי קיצור. כשיוצרים מאקרו בגיליון, הוא מתווסף כפונקציית מאקרו בפרויקט ב-Apps Script שמקושר לאותו גיליון. למידע נוסף על פקודות מאקרו, ראו פקודות מאקרו ב-Google Sheets.

לצערנו, לא ניתן להפיץ פקודות מאקרו של Sheets באמצעות תוספים. אם כוללים הגדרת מאקרו במניפסט של תוסף, היא לא זמינה למשתמשים של אותו תוסף.