اگر یک اسکریپت به جای یک اسکریپت مستقل از آن سند ایجاد شده باشد، به برگههای Google، اسناد، اسلایدها یا فایلهای فرمها متصل میشود. فایلی که یک اسکریپت باند به آن ضمیمه می شود، "کانتینر" نامیده می شود. اسکریپتهای باند معمولاً مانند اسکریپتهای مستقل عمل میکنند با این تفاوت که در Google Drive ظاهر نمیشوند، نمیتوان آنها را از فایلی که به آن متصل شدهاند جدا کرد و چند امتیاز ویژه نسبت به فایل والد کسب میکنند.
توجه داشته باشید که اسکریپتها را میتوان به Google Sites نیز متصل کرد، اما این اسکریپتها تقریباً همیشه بهعنوان برنامههای وب مستقر میشوند. اسکریپتهای متصل به Google Sheets، Docs، Slides یا Forms نیز میتوانند به برنامههای وب تبدیل شوند، اگرچه این غیر معمول است.
یک اسکریپت باند ایجاد کنید
Google Docs، Sheets یا Slides
برای ایجاد یک اسکریپت محدود در Google Docs، Sheets یا Slides، یک سند را در Docs، یک صفحه گسترده در Sheets یا یک ارائه را در Slides باز کنید و روی Extensions > Apps Script کلیک کنید. برای باز کردن مجدد اسکریپت در آینده، همین کار را انجام دهید یا اسکریپت را از داشبورد Apps Script باز کنید.
فرم های گوگل
برای ایجاد یک اسکریپت محدود در Google Forms، یک فرم را باز کنید و روی More > ویرایشگر اسکریپت کلیک کنید. برای باز کردن مجدد اسکریپت در آینده، همین کار را انجام دهید یا اسکریپت را از داشبورد 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 مراجعه کنید.
منوها، دیالوگ ها و نوارهای فرعی سفارشی
اسکریپتهای Bound میتوانند کاربرگنگار، اسناد، و فرمهای Google را با افزودن منوها و کادرهای محاورهای سفارشی یا نوارهای جانبی سفارشی کنند. با این حال، به خاطر داشته باشید که یک اسکریپت فقط برای نمونه فعلی یک فایل باز می تواند با رابط کاربری تعامل داشته باشد. یعنی یک اسکریپت محدود به یک سند نمی تواند بر رابط کاربری سند دیگر تأثیر بگذارد.
افزونه ها
افزونهها در Gmail، Google Sheets، Docs، Slides و Forms اجرا میشوند. اگر یک اسکریپت محدود یا مستقل ایجاد کرده اید و می خواهید آن را با جهان به اشتراک بگذارید، Apps Script به شما امکان می دهد اسکریپت خود را به عنوان یک افزونه منتشر کنید تا سایر کاربران بتوانند آن را از فروشگاه افزونه نصب کنند.
محرک ها
اسکریپتهای Bound میتوانند از محرکهای ساده مانند تابع ویژه onOpen()
استفاده کنند، که هر زمان که یک فایل توسط کاربری که دسترسی ویرایشی دارد، بهطور خودکار اجرا میشود. مانند همه انواع اسکریپت ها، آنها همچنین می توانند از تریگرهای قابل نصب استفاده کنند.
توابع سفارشی
یک تابع سفارشی تابعی در یک اسکریپت است که به کاربرگنگار Google متصل است و شما مستقیماً از یک سلول با استفاده از نحو =myFunctionName()
آن را فرا میخوانید. بنابراین، توابع سفارشی مشابه صدها تابع داخلی در برگهها مانند AVERAGE
یا SUM
هستند با این تفاوت که شما رفتار تابع سفارشی را تعریف میکنید.
دسترسی به اسکریپت های صحافی شده
فقط کاربرانی که مجوز ویرایش یک ظرف را دارند میتوانند اسکریپت محدود آن را اجرا کنند. مشارکتکنندگانی که فقط دسترسی به مشاهده دارند، نمیتوانند ویرایشگر اسکریپت را باز کنند، اگرچه اگر یک کپی از فایل کانتینر تهیه کنند، مالک کپی میشوند و میتوانند نسخهای از اسکریپت را ببینند و اجرا کنند.
برای آشنایی با نحوه اشتراکگذاری فایل محفظه یک اسکریپت، به اشتراکگذاری فایلها از Google Drive مراجعه کنید.