Skrypt jest powiązany z plikiem Arkuszy Google, Dokumentów Google, Prezentacji Google lub Formularzy Google, jeśli został utworzony w tym dokumencie, a nie jako samodzielny skrypt. Plik, do którego jest dołączony skrypt powiązany, nazywa się „kontenerem”. Skrypty powiązane działają zwykle jak skrypty samodzielne, z tym że nie pojawiają się na Dysku Google, nie można ich odłączyć od pliku, z którym są powiązane, i mają kilka specjalnych uprawnień w stosunku do pliku nadrzędnego.
Skrypty można też powiązać z Witrynami Google, ale są one prawie zawsze wdrażane jako aplikacje internetowe. Skrypty powiązane z Arkuszami, Dokumentami, Prezentacjami lub Formularzami również mogą stać się aplikacjami internetowymi, choć jest to rzadkie.
Skrypty powiązane to w zasadzie nieopublikowane dodatki do Google Workspace, które działają tylko w przypadku pliku, z którym są powiązane.
Tworzenie skryptu powiązanego
Skrypty powiązane możesz tworzyć w Dokumentach, Arkuszach, Prezentacjach i Formularzach.
Dokumenty, Arkusze i Prezentacje
Aby utworzyć skrypt powiązany w Dokumentach, Arkuszach lub Prezentacjach, otwórz dokument w Dokumentach, arkusz kalkulacyjny w Arkuszach lub prezentację w Prezentacjach i kliknij Rozszerzenia > Apps Script. Aby ponownie otworzyć skrypt w przyszłości, wykonaj te same czynności lub otwórz skrypt na panelu Apps Script.
Formularze
Aby utworzyć skrypt powiązany w Formularzach, otwórz formularz i kliknij Więcej > Edytor skryptów. Aby ponownie otworzyć skrypt w przyszłości, wykonaj te same czynności lub otwórz skrypt z panelu Apps Script.
Narzędzie clasp nie może tworzyć skryptów powiązanych, ale może je klonować i edytować.
Metody specjalne
Skrypty powiązane mogą wywoływać kilka metod, których nie mogą wywoływać skrypty samodzielne:
getActiveSpreadsheet,getActiveDocument,getActivePresentation, igetActiveFormumożliwiają skryptom powiązanym odwoływanie się do pliku nadrzędnego bez podawania identyfikatora pliku.getUiumożliwia skryptom powiązanym dostęp do interfejsu użytkownika pliku nadrzędnego w celu dodawania niestandardowych menu, okien i pasków bocznych.- W Arkuszach
getActiveSheet,getActiveRangeigetActiveCellumożliwiają skryptowi określenie bieżącego arkusza użytkownika, wybranego zakresu komórek lub wybranej komórki.setActiveSheetisetActiveRangeumożliwiają skryptowi zmianę tych wyborów. - W Dokumentach,
getActiveTab,getCursorigetSelectionskrypt może określać bieżącą kartę użytkownika, położenie kursora lub zaznaczony tekst.setActiveTab,setCursorisetSelectionumożliwiają skryptowi zmianę tych wyborów.
Więcej informacji znajdziesz w przewodniku po rozszerzaniu Arkuszy lub przewodniku po rozszerzaniu Dokumentów.
Te metody są dostępne tylko w przypadku skryptów powiązanych uruchamianych w edytorze skryptów, elementach menu, oknach, panelach bocznych lub wyzwalaczach. Gdy skrypt powiązany jest uruchamiany jako aplikacja internetowa lub przy użyciu interfejsu Google Apps Script API, te metody są niedostępne.
Menu, okna i paski boczne
Skrypty powiązane mogą dostosowywać Arkusze, Dokumenty i Formularze przez dodawanie niestandardowych menu oraz okien dialogowych lub pasków bocznych. Skrypt może wchodzić w interakcje z interfejsem użytkownika tylko w przypadku bieżącej instancji otwartego pliku. Skrypt powiązany z jednym dokumentem nie może wpływać na interfejs innego dokumentu.
Aktywatory
Skrypty powiązane mogą używać prostych reguł, takich jak specjalna funkcja onOpen, która jest uruchamiana automatycznie za każdym razem, gdy plik jest otwierany przez użytkownika z uprawnieniami do edycji. Podobnie jak wszystkie typy skryptów mogą też używać instalowanych wyzwalaczy.
Funkcje niestandardowe
Funkcja niestandardowa to funkcja w skrypcie powiązanym z Arkuszami, którą wywołujesz bezpośrednio z komórki za pomocą składni =myFunctionName(). Funkcje niestandardowe są podobne do setek wbudowanych funkcji w Arkuszach, takich jak AVERAGE czy SUM, z tą różnicą, że to Ty określasz działanie funkcji niestandardowej.
Dostęp do skryptów powiązanych
Skrypt powiązany z kontenerem mogą uruchamiać tylko użytkownicy, którzy mają uprawnienia do edytowania tego kontenera. Współpracownicy, którzy mają tylko uprawnienia do wyświetlania, nie mogą otworzyć edytora skryptów. Jeśli utworzą kopię pliku kontenera, staną się jego właścicielami i będą mogli wyświetlać i uruchamiać kopię skryptu.
Aby dowiedzieć się, jak udostępnić plik kontenera skryptu, przeczytaj artykuł Udostępnianie plików z Dysku.
Wszystkie skrypty powiązane z kontenerem korzystają z tej samej listy dostępu właściciela, przeglądającego i edytującego zdefiniowanej dla pliku kontenera. Właściciel kontenera przejmuje własność nowego projektu skryptu niezależnie od tego, kto go utworzył.