סקריפט מקושר לקובץ Google Sheets, Docs, Slides או Forms אם הוא נוצר מהמסמך הזה ולא כסקריפט עצמאי. הקובץ שאליו מצורף סקריפט מקושר נקרא 'מאגר'. סקריפטים מקושרים מתנהגים בדרך כלל כמו סקריפטים עצמאיים, מלבד העובדה שהם לא מופיעים ב-Google Drive, אי אפשר לנתק אותם מהקובץ שאליו הם מקושרים, והם מקבלים כמה הרשאות מיוחדות על פני קובץ ההורה.
הערה: אפשר לקשר גם סקריפטים ל-Google Sites, אבל הם כמעט תמיד פרוסים כאפליקציות אינטרנט. סקריפטים שמקושרים ל-Google Sheets, ל-Docs, ל-Slides או ל-Forms יכולים גם להפוך לאפליקציות אינטרנט, אבל לא נפוץ.
יצירת סקריפט מקושר
Google Docs, Sheets או Slides
כדי ליצור סקריפט מקושר ב-Google Docs, ב-Sheets או ב-Slides, פותחים מסמך ב-Docs, גיליון אלקטרוני ב-Sheets או מצגת ב-Slides ולוחצים על Extensions (תוספים) > Apps Script (סקריפט ל-Apps). כדי לפתוח מחדש את הסקריפט בעתיד, מבצעים את אותה פעולה או פותחים את הסקריפט ממרכז הבקרה של Apps Script.
Google Forms
כדי ליצור סקריפט קשור ב-Google Forms, פותחים טופס ולוחצים על סמל האפשרויות הנוספות > עורך הסקריפטים. כדי לפתוח מחדש את הסקריפט בעתיד, מבצעים את אותה פעולה או פותחים את הסקריפט ממרכז הבקרה של Apps Script.
שיטות מיוחדות
סקריפטים מקושרים יכולים להפעיל כמה שיטות שסקריפטים עצמאיים לא יכולים להפעיל:
getActiveSpreadsheet()
,getActiveDocument()
,getActivePresentation()
, ו-getActiveForm()
מאפשרים לסקריפטים קשורים להפנות לקובץ ההורה שלהם בלי להתייחס למזהה הקובץ.- הפקודה
getUi
מאפשרת לסקריפטים מוגבלים לגשת לממשק המשתמש של קובץ ההורה שלהם ולהוסיף תפריטים, תיבות דו-שיח וסרגלי צד בהתאמה אישית. - ב-Google Sheets,
getActiveSheet()
,getActiveRange()
ו-getActiveCell()
מאפשרים לסקריפט לקבוע את הגיליון הנוכחי של המשתמש, את טווח התאים שנבחר או את התא הספציפי שנבחר.setActiveSheet(sheet)
ו-setActiveRange(range)
מאפשרים לסקריפט לשנות את הבחירות האלה. - ב-Google Docs, המשתנים
getActiveTab()
,getCursor()
ו-getSelection()
מאפשרים לסקריפט לקבוע את הכרטיסייה הנוכחית של המשתמש, את המיקום של הסמן או את הטקסט שנבחר.setActiveTab(tabId)
,setCursor(position)
ו-setSelection(range)
מאפשרים לסקריפט לשנות את הבחירות האלה.
למידע נוסף, תוכלו לקרוא את המדריך להרחבת Google Sheets או המדריך להרחבת Google Docs.
תפריטים, תיבות דו-שיח וסרגלי צד בהתאמה אישית
באמצעות סקריפטים מקושרים אפשר להתאים אישית את Google Sheets, Docs ו-Forms על ידי הוספת תפריטים מותאמים אישית ותיבות דו-שיח או סרגל צד. עם זאת, חשוב לזכור שסקריפט יכול לקיים אינטראקציה עם ממשק המשתמש רק במופע הנוכחי של קובץ פתוח. כלומר, סקריפט שמקושר למסמך אחד לא יכול להשפיע על ממשק המשתמש של מסמך אחר.
חבילות ערוצים
תוספים פועלים ב-Gmail, ב-Google Sheets, ב-Docs, ב-Slides וב-Forms. אם פיתחתם סקריפט מקושר או עצמאי ואתם רוצים לשתף אותו עם כולם, אתם יכולים לפרסם את הסקריפט כתוסף ב-Apps Script כדי שמשתמשים אחרים יוכלו להתקין אותו מחנות התוספים.
טריגרים
אפשר להשתמש בטריגרים פשוטים בסקריפטים מקושרים, כמו הפונקציה המיוחדת onOpen()
, שפועלת באופן אוטומטי בכל פעם שמשתמש עם הרשאת עריכה פותח קובץ. כמו כל סוגי הסקריפטים, אפשר להשתמש בהם גם בטריגרים שניתן להתקין.
פונקציות מותאמות אישית
פונקציה בהתאמה אישית היא פונקציה בסקריפט שמקושר ל-Google Sheets, שאפשר להפעיל ישירות מתא באמצעות התחביר =myFunctionName()
. לכן, פונקציות בהתאמה אישית דומות למאות הפונקציות המובנות ב-Sheets, כמו AVERAGE
או SUM
, אלא שהפעם אתם מגדירים את ההתנהגות של הפונקציה בהתאמה אישית.
גישה לסקריפטים מקושרים
רק משתמשים שיש להם הרשאת עריכה בקונטיינר יכולים להריץ את הסקריפט המקושר שלו. שותפי עריכה שיש להם גישת צפייה בלבד לא יכולים לפתוח את עורך הסקריפטים. עם זאת, אם הם יוצרים עותק של קובץ המאגר, הם הופכים לבעלים של העותק ויכולים לראות ולהריץ עותק שלו.
במאמר שיתוף קבצים מ-Google Drive מוסבר איך משתפים קובץ מאגר של סקריפט.