Un script est lié à un fichier Google Sheets, Docs, Slides ou Forms s'il a été créé à partir de ce document plutôt qu'en tant que script autonome. Le fichier auquel un script lié est associé est appelé "conteneur". Les scripts associés se comportent généralement comme des scripts autonomes, à l'exception qu'ils n'apparaissent pas dans Google Drive, qu'ils ne peuvent pas être dissociés du fichier auquel ils sont associés et qu'ils bénéficient de quelques privilèges spéciaux sur le fichier parent.
Notez que les scripts peuvent également être liés à Google Sites, mais qu'ils sont presque toujours déployés en tant qu'applications Web. Les scripts liés à Google Sheets, Docs, Slides ou Forms peuvent également devenir des applications Web, bien que cela soit rare.
Créer un script associé
Google Docs, Sheets ou Slides
Pour créer un script lié dans Google 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.
Google Forms
Pour créer un script lié dans Google Forms, ouvrez un formulaire, puis cliquez sur Plus > Éditeur de 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.
Méthodes spéciales
Les scripts liés peuvent appeler des méthodes que les scripts autonomes ne peuvent pas:
getActiveSpreadsheet()
,getActiveDocument()
,getActivePresentation()
etgetActiveForm()
permettent aux scripts liés de faire référence à leur fichier parent sans faire référence à l'ID du fichier.getUi
permet aux scripts liés d'accéder à l'interface utilisateur de leur fichier parent afin d'ajouter des menus, boîtes de dialogue et barres latérales personnalisés.- Dans Google Sheets,
getActiveSheet()
,getActiveRange()
etgetActiveCell()
permettent 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.setActiveSheet(sheet)
etsetActiveRange(range)
permettent au script de modifier ces sélections. - Dans Google Docs,
getActiveTab()
,getCursor()
etgetSelection()
permettent au script de déterminer l'onglet actuel de l'utilisateur, sa position ou le texte sélectionné.setActiveTab(tabId)
,setCursor(position)
etsetSelection(range)
permettent au script de modifier ces sélections.
Pour en savoir plus, consultez le guide d'extension de Google Sheets ou le guide d'extension de Google Docs.
Menus, boîtes de dialogue et barres latérales personnalisés
Les scripts liés peuvent personnaliser Google Sheets, Docs et Forms en ajoutant des menus personnalisés et des boîtes de dialogue ou barres latérales. Gardez à l'esprit, cependant, qu'un script ne peut interagir qu'avec l'interface utilisateur de l'instance actuelle d'un fichier ouvert. Autrement dit, un script lié à un document ne peut pas affecter l'interface utilisateur d'un autre document.
Modules complémentaires
Les modules complémentaires s'exécutent dans Gmail, Google Sheets, Docs, Slides et Forms. Si vous avez développé un script lié ou autonome et que vous souhaitez le partager avec le monde entier, Apps Script vous permet de publier votre script en tant que module complémentaire afin que d'autres utilisateurs puissent l'installer à partir du catalogue de modules complémentaires.
Déclencheurs
Les scripts liés peuvent utiliser des déclencheurs simples tels que la fonction spéciale onOpen()
, qui s'exécute automatiquement chaque fois qu'un fichier est ouvert par un utilisateur disposant d'un accès en modification. 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é à Google Sheets, que vous appelez directement à partir d'une cellule en utilisant la syntaxe =myFunctionName()
. Les fonctions personnalisées sont donc semblables aux centaines de fonctions intégrées dans Sheets, telles que AVERAGE
ou SUM
, à la différence que vous définissez le comportement de la fonction personnalisée.
Accès aux scripts liés
Seuls les utilisateurs autorisés à modifier un conteneur peuvent exécuter son script associé. Les collaborateurs qui ne disposent que d'un accès en lecture ne peuvent pas ouvrir l'éditeur de script. Toutefois, s'ils créent une copie du fichier de conteneur, ils deviennent propriétaires de la copie et peuvent voir et exécuter une copie du script.
Pour savoir comment partager le fichier de conteneur d'un script, consultez Partager des fichiers via Google Drive.