Extension de Google Sheets avec des modules complémentaires

Google Sheets est une solution de feuille de calcul dans le cloud qui permet de collaborer en temps réel et d'utiliser des outils puissants pour visualiser, traiter et communiquer des données.

Vous pouvez enrichir Sheets avec des modules complémentaires permettant de créer des améliorations de workflow personnalisées, d'établir la connectivité à des systèmes tiers et d'intégrer vos données Sheets à d'autres applications Google Workspace (telles que Google Slides).

Vous pouvez voir les modules complémentaires Sheets que d'autres utilisateurs ont créés sur Google Workspace Marketplace.

Ce que vous pouvez faire

Voici quelques exemples de ce que vous pouvez faire avec un module complémentaire qui étend Google Sheets:

Les modules complémentaires Sheets sont créés à l'aide d'Apps Script. Pour savoir comment accéder à Google Sheets et la gérer avec Apps Script, consultez la page Étendre Google Sheets.

Structure de la feuille

Une feuille de calcul Google Sheets se compose d'une ou de plusieurs feuilles. Chaque feuille est essentiellement une grille de cellules 2D dans laquelle du texte, des nombres, des liens ou d'autres valeurs peuvent être stockés. Un groupe d'une ou plusieurs cellules adjacentes est appelé plage.

Le service Feuille de calcul d'Apps Script fournit plusieurs classes pour représenter les structures organisationnelles dans Sheets (par exemple, Sheet et Range). Vous pouvez utiliser ces classes pour lire et modifier les données et le comportement de Sheets.

Déclencheurs

Les déclencheurs Apps Script permettent à un projet de script d'exécuter une fonction spécifiée lorsque certaines conditions sont remplies, par exemple lorsqu'une feuille de calcul est ouverte ou qu'un module complémentaire est installé.

Consultez la section Déclencheurs de modules complémentaires pour en savoir plus sur les déclencheurs pouvant être utilisés avec les modules complémentaires Sheets et sur les restrictions qui s'appliquent à leur utilisation.

Fonctions personnalisées

Google Sheets dispose d'un certain nombre de fonctions intégrées telles que SUM et AVERAGE qui peuvent être appelées à partir d'une cellule Google Sheets. Les modules complémentaires Sheets peuvent définir des fonctions personnalisées supplémentaires pour compléter ces fonctions intégrées. Lorsqu'un utilisateur installe le module complémentaire, toutes les fonctions personnalisées définies incluses dans celui-ci sont immédiatement disponibles. Il est possible qu'un module complémentaire ne contienne que des définitions de fonctions personnalisées. Les définitions de fonctions personnalisées sont principalement partagées avec d'autres utilisateurs via la publication d'un module complémentaire contenant les définitions.

Créer des fonctions personnalisées de modules complémentaires

Toute fonction définie dans un projet de script de module complémentaire peut être utilisée en tant que fonction personnalisée. Une fois la fonction implémentée et le module complémentaire installé, vous pouvez appeler la fonction personnalisée comme n'importe quelle autre fonction Sheets intégrée: dans une cellule de la feuille, saisissez = suivi du nom de la fonction et des paramètres requis. En l'absence d'erreurs, le résultat renvoyé par la fonction est placé dans la cellule Sheet et déborde sur les cellules voisines, si nécessaire.

Lorsque vous créez des fonctions personnalisées dans un module complémentaire, vous devez suivre les consignes générales relatives aux fonctions personnalisées:

En outre, les fonctions personnalisées définies dans les modules complémentaires sont soumises à des considérations particulières:

  • Lorsque vous nommez votre fonction, essayez de créer un nom unique, éventuellement lié au nom de votre module complémentaire. Si deux modules complémentaires installés ou plus définissent des fonctions personnalisées portant le même nom, les utilisateurs ne peuvent en utiliser qu'une seule.
  • Votre module complémentaire doit indiquer clairement les fonctions personnalisées qu'il fournit. Veillez à fournir des commentaires JSDoc précis pour vos fonctions personnalisées afin qu'Apps Script puisse présenter des informations de saisie semi-automatique à l'utilisateur. En outre, envisagez de fournir une documentation supplémentaire sur les fonctions personnalisées soit dans le module complémentaire lui-même, soit sur une page Web d'assistance du module complémentaire.
  • Les fonctions personnalisées qui ne s'exécutent pas en moins de 30 secondes échouent avec l'erreur Internal error executing the custom function. Créez une expérience utilisateur de qualité en limitant la quantité de traitement effectuée dans une fonction personnalisée. Optimisez la fonction lorsque vous le pouvez.
  • Les fonctions personnalisées ne peuvent pas utiliser les services Apps Script qui nécessitent une autorisation et échouent en renvoyant une erreur You do not have permission to call X service en cas de tentative. N'utilisez que les services autorisés dans votre fonction personnalisée.
  • Chaque fonction personnalisée d'une feuille entraîne un appel distinct vers les serveurs Apps Script. Si un utilisateur tente d'utiliser des fonctions personnalisées dans trop de cellules, celles-ci peuvent s'exécuter lentement. Pour atténuer ce problème, vos fonctions personnalisées doivent être aussi simples que possible. Si vous souhaitez que la fonction effectue un traitement complexe ou étendu, n'utilisez pas de fonction personnalisée. Fournissez plutôt cette fonctionnalité via un élément de menu, une boîte de dialogue ou une interaction avec la barre latérale.

Macros Sheets

Les macros vous permettent d'enregistrer les actions effectuées dans Google Sheets et de les répéter ultérieurement à l'aide d'un raccourci clavier. Lorsqu'une macro est créée dans une feuille, elle est ajoutée en tant que fonction macro dans un projet Apps Script lié à cette feuille. Pour en savoir plus sur les macros, consultez la page Macros Google Sheets.

Malheureusement, les macros Sheets ne peuvent pas être distribuées avec des modules complémentaires. Si vous incluez une définition de macro dans le fichier manifeste d'un module complémentaire, elle n'est pas disponible pour les utilisateurs de ce module complémentaire.