Un script est associé à un fichier Google Sheets, Google Docs, Google Slides ou Google Forms s'il a été créé à partir de ce document plutôt que comme script autonome. Le fichier auquel un script lié est associé est appelé "conteneur". Les scripts liés se comportent généralement comme des scripts autonomes, sauf qu'ils n'apparaissent pas dans Google Drive, qu'ils ne peuvent pas être dissociés du fichier auquel ils sont liés et qu'ils bénéficient de quelques privilèges spéciaux sur le fichier parent.
Les scripts peuvent également être liés à Google Sites, mais ils sont presque toujours déployés en tant qu'applications Web. Les scripts associés à Sheets, Docs, Slides ou Forms peuvent également devenir des applications Web, bien que cela soit rare.
Les scripts liés sont des modules complémentaires Google Workspace qui ne fonctionnent que pour le fichier auquel ils sont liés.
Créer un script lié
Vous pouvez créer des scripts liés dans Docs, Sheets, Slides et Forms.
Docs, Sheets ou Slides
Pour créer un script lié dans Docs, Sheets ou Slides, ouvrez un document dans Docs, une feuille de calcul dans Sheets ou une présentation dans Slides, puis cliquez sur Extensions > Apps Script. Pour rouvrir le script à l'avenir, procédez de la même manière ou ouvrez-le depuis le tableau de bord Apps Script.
Formulaires
Pour créer un script lié dans Forms, ouvrez un formulaire et cliquez sur Plus > Éditeur de script. Pour rouvrir le script ultérieurement, procédez de la même manière ou ouvrez-le depuis le tableau de bord Apps Script.
L'outil clasp ne peut pas créer de scripts liés, mais il peut les cloner et les modifier.
Méthodes spéciales
Les scripts liés peuvent appeler certaines méthodes que les scripts autonomes ne peuvent pas appeler :
getActiveSpreadsheet,getActiveDocument,getActivePresentation, etgetActiveFormpermettent aux scripts liés de faire référence à leur fichier parent sans faire référence à l'ID du fichier.getUipermet aux scripts associés d'accéder à l'interface utilisateur de leur fichier parent pour ajouter des menus, des boîtes de dialogue et des barres latérales personnalisés.- Dans Sheets,
getActiveSheet,getActiveRangeetgetActiveCellpermettent au script de déterminer la feuille actuelle de l'utilisateur, la plage de cellules sélectionnée ou la cellule individuelle sélectionnée.setActiveSheetetsetActiveRangepermettent au script de modifier ces sélections. - Dans Docs,
getActiveTab,getCursoretgetSelectionpermettent au script de déterminer l'onglet actuel de l'utilisateur, la position de son curseur ou le texte sélectionné.setActiveTab,setCursoretsetSelectionpermettent au script de modifier ces sélections.
Pour en savoir plus, consultez le guide sur l'extension de Sheets ou le guide sur l'extension de Docs.
Ces méthodes ne sont disponibles que pour les scripts associés exécutés à partir de l'éditeur de script, des éléments de menu, des boîtes de dialogue, des barres latérales ou des déclencheurs. Lorsque vous exécutez un script associé en tant qu'application Web ou à l'aide de l'API Google Apps Script, ces méthodes ne sont pas disponibles.
Menus, boîtes de dialogue et barres latérales personnalisés
Les scripts liés peuvent personnaliser Sheets, Docs et Forms en ajoutant des menus personnalisés et des boîtes de dialogue ou des barres latérales. Un script ne peut interagir avec l'interface utilisateur que pour l'instance actuelle d'un fichier ouvert. Un script lié à un document ne peut pas affecter l'interface utilisateur d'un autre document.
Déclencheurs
Les scripts associés peuvent utiliser des déclencheurs simples comme la fonction spéciale onOpen, qui s'exécute automatiquement chaque fois qu'un utilisateur ayant accès en modification ouvre un fichier. Comme tous les types de scripts, ils peuvent également utiliser des déclencheurs installables.
Fonctions personnalisées
Une fonction personnalisée est une fonction d'un script lié à Sheets que vous appelez directement depuis une cellule à l'aide de la syntaxe =myFunctionName(). Les fonctions personnalisées sont semblables aux centaines de fonctions intégrées de Sheets, comme AVERAGE ou SUM, à la différence que vous définissez le comportement de la fonction personnalisée.
Accès aux scripts associés
Seuls les utilisateurs autorisés à modifier un conteneur peuvent exécuter son script associé. Les collaborateurs disposant d'un accès en lecture seule ne peuvent pas ouvrir l'éditeur de script. S'il crée une copie du fichier conteneur, il en devient le propriétaire et peut voir et exécuter une copie du script.
Pour savoir comment partager le fichier conteneur d'un script, consultez Partager des fichiers depuis Drive.
Tous les scripts liés à un conteneur utilisent la même liste d'accès pour les propriétaires, les lecteurs et les éditeurs définie pour le fichier conteneur. Le propriétaire du conteneur devient propriétaire d'un nouveau projet de script, quel que soit son créateur.