Comment surcharger vos applications Google avec l'éditeur de script

Si vous utilisez Google Apps, il est probable que vous ne les utilisiez pas pleinement. Avec Google Apps Script, vous pouvez ajouter des menus et des boîtes de dialogue personnalisés, rédiger des fonctions et des macros personnalisées et créer des modules complémentaires pour étendre Google Docs, les feuilles et les diapositives.

Qu'est-ce qu'un script Google Apps?

Google Apps Script est une plate-forme de développement en nuage permettant de créer des applications Web personnalisées et légères. Vous pouvez créer des applications évolutives directement dans votre navigateur, qui s'intègrent facilement aux produits Google.

Apps Script utilise le langage JavaScript et rassemble la connaissance du développement Web et des produits Google au même endroit, ce qui en fait un outil idéal pour personnaliser les applications pour votre entreprise, votre organisation ou tout simplement pour automatiser des tâches banales.

Vous pouvez créer deux types de scripts avec Google Apps Script:

  • Standalone: These scripts aren’t bound to any service—like Google Docs, Sheets, or Slides. They can perform system-wide functions, sort of like macros. They’re not ideal for sharing with a broader audience because you need to copy and paste the code to use them. Examples include searching your Drive for files with specific names or seeing who has access to your shared files and folders in Drive.
  • Bound: These are linked to a Google Docs, Sheets, Forms, or Slides file. Bound scripts extend a file’s functionality and perform actions only in that specific file. Examples include adding custom menus, dialogs boxes, and sidebars to a service or a script that emails you notifications any time a particular cell in a Sheet changes.

Si vous ne connaissez pas beaucoup JavaScript, ou peut-être n'en avez-vous jamais entendu parler auparavant, ne vous laissez pas décourager de développer votre propre script. Il est très facile de commencer à utiliser Apps Script, car il fournit une mine de documentation et d’exemples que vous pouvez tester vous-même. Vous trouverez ci-dessous quelques exemples simples pour vous aider à comprendre leur fonctionnement.

Comment créer un script autonome

Maintenant que vous savez ce qu’ils sont, allons-y et créez votre premier script autonome. Nous allons utiliser un exemple de code fourni par Google pour nous aider à démarrer et nous fournirons des explications sur les lignes de code si vous ne connaissez pas GoogleScript ou JavaScript.

Rendez-vous sur Google Apps Script. Dans le coin supérieur gauche, cliquez sur l'icône du hamburger, puis sur «Nouveau script».

Un nouveau projet sans titre s'ouvre avec une fonction vide, mais comme nous utilisons un exemple de code fourni par Google, vous pouvez continuer et supprimer tout le texte du fichier.

Remarque: pour que ce script fonctionne, vous devez être connecté à votre compte Google.

Après avoir supprimé le code préchargé dans le fichier, collez le code suivant:

//Initialize your function
 function createADocument() {
 
// Create a new Google Doc named 'Hello, world!'
 var doc = DocumentApp.create('Hello, world!');
 
// Access the body of the document, then add a paragraph.
 doc.getBody().appendParagraph('This document was created by Google Apps Script.');
 }

Avant de pouvoir exécuter le code, vous devez enregistrer le script. Cliquez sur "Fichier" puis cliquez sur "Enregistrer".

Renommez le projet en quelque chose qui vous aide à vous rappeler ce que fait le script, puis cliquez sur «OK».

Pour exécuter votre code, cliquez sur l'icône de lecture située dans la barre d'outils.

Vous devrez accorder au script certaines autorisations pour accéder à votre compte Google via une fenêtre contextuelle après avoir cliqué sur «Exécuter» pour la première fois. Cliquez sur «Examiner les autorisations» pour voir ce dont vous avez besoin d'accéder.

Comme il ne s’agit pas d’une application validée par Google, vous recevrez un autre avertissement. Il dit en gros que, sauf si vous connaissez le développeur (nous), ne procédez que si vous leur faites confiance. Cliquez sur "Avancé", puis sur "Accéder à CreateNewDoc" (ou ce que vous avez nommé ce script).

Vérifiez les autorisations requises par le script, puis cliquez sur «Autoriser».

Génial! Maintenant, dirigez-vous vers votre lecteur et si tout fonctionne bien, le fichier «Hello, World!» Devrait être là. Double-cliquez dessus pour l'ouvrir.

Lorsque vous ouvrez le fichier, la ligne de texte ajoutée au code s’ajoute à votre document.

Désormais, si vous souhaitez recevoir une notification par e-mail lors de la création du document, vous pouvez ajouter quelques lignes de code supplémentaires pour en envoyer automatiquement à votre compte Google. Ajoutez les lignes de code suivantes après doc.getBody (). AppendParagraph ('Ce document a été créé par Google Apps Script.'); mais avant la dernière accolade }:

// Get the URL of the document.
var url = doc.getUrl();
// Get the email address of the active user - that's you.
var email = Session.getActiveUser().getEmail();

// Get the name of the document to use as an email subject line.
var subject = doc.getName();

// Append a new string to the "url" variable to use as an email body.
var body = 'Link to your doc: ' + url;

// Send yourself an email with a link to the document.
GmailApp.sendEmail(email, subject, body);

Cliquez sur l'icône "Exécuter".

Comme vous avez ajouté quelques lignes supplémentaires nécessitant des autorisations supplémentaires, vous devez suivre le même processus qu'auparavant. Cliquez sur «Examiner les autorisations».

Cliquez sur "Avancé", puis sur "Accéder à CreateNewDoc".

Remarque: Google vous avertissant du lancement d'applications non vérifiées, vous recevrez également un e-mail d'alerte de sécurité. Google le fait au cas où vous ne seriez pas celui qui donnerait accès à une application non vérifiée.

Passez en revue le nouvel ensemble d'autorisations requises par le script, puis cliquez sur «Autoriser».

Lorsque le document est créé, vous recevez un courrier électronique contenant un lien vers le fichier dans votre Google Drive.

En cliquant sur le lien, vous accédez directement au fichier, qui se trouve dans votre Google Drive.

Comment créer un script lié

Pour cet exemple suivant, créons un script lié pour Google Sheets qui analyse une feuille existante pour les entrées en double dans une ligne, puis les supprime.

Si vous vous souvenez des précédents, les scripts liés fonctionnent comme des additifs pour des fichiers spécifiques. Pour en créer un, ouvrons une feuille de calcul Google Sheet existante contenant au moins un point de données dupliqué.

Cliquez sur "Outils" puis sur "Éditeur de script".

Le script Google Apps s'ouvre dans un nouvel onglet avec un script vide. Cette fois, cependant, le script est lié à la feuille à partir de laquelle il s'ouvre.

Comme avant, supprimez la fonction vide et collez le code suivant:

//Removes duplicate rows from the current sheet.

 function removeDuplicates() {
//Get current active Spreadsheet
 var sheet = SpreadsheetApp.getActiveSheet();
//Get all values from the spreadsheet's rows
 var data = sheet.getDataRange().getValues();
//Create an array for non-duplicates
 var newData = [];
//Iterate through a row's cells
 for (var i in data) {
   var row = data[i];
   var duplicate = false;
   for (var j in newData) {
    if (row.join() == newData[j].join()) {
     duplicate = true;
    }
  }
//If not a duplicate, put in newData array
 if (!duplicate) {
  newData.push(row);
 }
}
//Delete the old Sheet and insert the newData array
 sheet.clearContents();
 sheet.getRange(1, 1, newData.length, newData[0].length).setValues(newData);
}

Remarque: pour que le script supprime un doublon, toutes les cellules de la ligne doivent correspondre.

Enregistrez et renommez votre script, puis cliquez sur l'icône "Exécuter".

De nouveau, à mesure que vous avez rencontré le dernier script créé, vous devrez vérifier les autorisations requises par votre script et lui accorder l'accès à votre feuille de calcul. Cliquez sur «Examiner les autorisations» pour voir quel accès ce script veut.

Acceptez les invites et cliquez sur «Autoriser» pour autoriser le script.

Une fois l’opération terminée, revenez à votre feuille et, comme par magie, toutes les entrées en double disparaissent de votre fichier!

Malheureusement, si vos données sont à l'intérieur d'un tableau, comme dans l'exemple ci-dessus, ce script ne redimensionnera pas le tableau pour l'adapter au nombre d'entrées qu'il contient.

Bien que ce soient deux exemples assez simples d’utilisation du script Apps, les options sont presque illimitées et tout dépend de ce que vous pouvez imaginer avec ces ressources. Mais dans l’intervalle, rendez-vous sur la page GSuite Devs Github ou Digital Inspiration et consultez la pile d’exemples de scripts que vous pouvez déployer au sein de vos propres services pour avoir une meilleure idée de ce que Script Script est réellement capable de faire.