Exercice pratique avec Google Apps Script: accéder à Google Sheets, Maps et Gmail en quatre lignes de code

1. Présentation de Google Apps Script

Dans cet atelier de programmation, nous vous présenterons l'une des méthodes les plus simples pour écrire du code qui accède aux technologies Google pour les développeurs. Tout se fait en appliquant JavaScript, un langage de développement Web grand public. À l'aide de Google Apps Script, vous allez rédiger du code pour extraire une adresse postale d'une cellule dans une feuille de calcul Google Sheets, générer un plan Google Maps basé sur l'adresse, puis envoyer le plan en pièce jointe à l'aide de Gmail. Et le meilleur dans tout ça ? Il ne comporte que quatre lignes de code.

Points abordés

  • Utiliser Google Apps Script avec divers services Google, tels que Google Sheets, Google Maps et Gmail
  • Développez du code à l'aide de l'éditeur intégré au navigateur pour Apps Script.

Prérequis

  • Un navigateur Web ayant accès à Internet
  • Un compte Google (les comptes Google Workspace peuvent nécessiter l'approbation d'un administrateur)
  • Connaissances de base sur Google Sheets
  • Capacité à lire la notation A1 Sheets

2. Enquête

Comment allez-vous utiliser cet atelier de programmation/ce tutoriel ?

Je vais le lire uniquement Je vais le lire et effectuer les exercices

Comment évalueriez-vous votre expérience avec les outils pour les développeurs et API ?

<ph type="x-smartling-placeholder"></ph> Débutant Intermédiaire Expert
.

3. Présentation

Maintenant que vous savez en quoi consiste cet atelier de programmation, qu'allez-vous faire exactement ?

  1. Apprenez-en plus sur Apps Script, un outil basé sur JavaScript.
  2. Créez une feuille de calcul Google Sheets.
  3. Saisissez une adresse postale dans la cellule située en haut à gauche (A1) de la feuille de calcul.
  4. Découvrez comment ouvrir l'éditeur Apps Script pour n'importe quel document.
  5. Modifier, enregistrer et exécuter le code Apps Script
  6. Utilisez Gmail pour afficher le résultat.

C'est parti !

Qu'est-ce que Google Apps Script ?

Google Apps Script est une plate-forme de développement qui permet de créer rapidement et facilement des scripts et de petites applications qui s'intègrent à Google Workspace. Avec Apps Script, vous pouvez :

  • Écrivez du code en JavaScript et accédez aux bibliothèques intégrées pour les applications Google Workspace telles que Gmail, Agenda, Drive, etc.
  • Vous n'avez rien à installer. Nous mettons à votre disposition un éditeur de code directement dans votre navigateur et vos scripts s'exécutent sur les serveurs de Google.
  • Vous n'avez pas à vous soucier des sujets complexes, tels que la sécurité et les autorisations d'accès aux données, car la plate-forme s'en charge pour vous.

Apps Script permet de créer diverses applications, qu'il s'agisse de chatbots ou d'applications Web. L'une des utilisations les plus courantes consiste à étendre les fonctionnalités d'une feuille de calcul Google Sheets. Dans la suite de cet atelier de programmation, vous apprendrez à utiliser Apps Script pour récupérer des données d'une feuille de calcul et les connecter à d'autres services Google.

4. Créer une feuille de calcul Google Sheets et saisir une adresse postale

Dans une nouvelle feuille de calcul Google Sheets, saisissez une adresse postale valide en suivant ces instructions:

  1. Créez une feuille de calcul Google Sheets à l'aide de ce lien (sheets.google.com/create). Vous pouvez également accéder à Google Drive (drive.google.com) et cliquer sur Nouveau > Google Sheets > Feuille de calcul vierge

413a93e5b2f6b3d4.png

  1. Dans la feuille de calcul vierge, accédez à la première cellule en haut à gauche (A1). Cette cellule se trouve colonne A, ligne 1. Si vous avez besoin de vous familiariser à nouveau, consultez cette description de la notation A1.
  2. Saisissez une adresse postale valide dans la cellule. Choisissez une adresse dans le monde et un emplacement précis à l'aide d'une adresse postale, d'un code postal ou d'une combinaison de villes et d'états/provinces. Voici un exemple d'adresse à New York:

7077e446455639df.png

C'est tout ce que vous avez à faire dans la feuille. Ouvrons l'éditeur et écrivons du code.

5. Modifier le code Apps Script

Maintenant que vous avez créé une feuille de calcul Google Sheets, modifiez le script qui lui est lié. Procédez comme suit :

Ouvrir l'éditeur de script

Dans la barre de menu, sélectionnez Extensions > Apps Script pour ouvrir l'éditeur de code du navigateur pour Apps Script.

Dans un nouvel onglet de navigateur, l'éditeur de code affiche le script lié au conteneur par défaut pour la feuille. Une fonction par défaut nommée myFunction() est créée automatiquement, et votre curseur est placé à l'intérieur de la fonction pour que vous puissiez commencer.

Envoyer par e-mail un plan Google de l'adresse

Le "modèle" le code qui vous est fourni est vide, alors remplaçons-le par notre application.

  1. Dans l'éditeur de script, remplacez le bloc de code myFunction() par défaut par le code suivant:
/** @OnlyCurrentDoc */
function sendMap() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var address = sheet.getRange('A1').getValue();
  var map = Maps.newStaticMap().addMarker(address);
  GmailApp.sendEmail('YOUR_EMAIL_ADDR', 'Map', 'See below.', {attachments:[map]});
}
  1. Remplacez l'adresse e-mail réservée ('YOUR_EMAIL_ADDR') par une adresse valide. Par exemple, friend@example.com.
  2. Pour enregistrer votre script, cliquez sur Enregistrer enregistrer.
  3. Pour renommer votre projet Apps Script, cliquez sur Projet sans titre, saisissez un titre pour votre projet, puis cliquez sur Renommer.

Réviser le code

Passons en revue les quatre lignes de la fonction sendMap() qui constituent l'ensemble de l'application. Fait intéressant, le code fait référence à trois produits Google différents.

La première ligne est un commentaire d'annotation qui affecte l'autorisation:

/** @OnlyCurrentDoc */

La plupart des scripts demandent certaines autorisations à l'utilisateur avant de pouvoir s'exécuter. Ces autorisations contrôlent ce que l'utilisateur autorise le script à faire. La première ligne est un commentaire contenant une annotation facultative demandant à Apps Script de limiter l'accès à la feuille de calcul actuelle (par opposition à toutes les feuilles de calcul de l'utilisateur). Il est toujours recommandé d'inclure cette annotation lorsque vous ne travaillez qu'avec un seul fichier.

Le code utilise une déclaration de fonction JavaScript normale pour sendMap():

function sendMap() {

La ligne suivante appelle le service Spreadsheet qui est accessible à partir d'Apps Script via l'objet SpreadsheetApp. La feuille renvoyée est attribuée à une variable du même nom. La méthode getActiveSheet() obtient une référence à l'objet sheet actuel et la stocke dans la variable sheet.

  var sheet = SpreadsheetApp.getActiveSheet();

Avec l'objet sheet, nous faisons référence à la plage de cellules (d'une cellule unique) en notation A1 avec getRange(). Une "plage" est un groupe de cellules, dont une seule, comme la cellule A1 (celle dans laquelle nous avons saisi l'adresse). Pour récupérer le contenu de la plage, la méthode getValue() renvoie la valeur de la cellule en haut à gauche de la plage et affecte cette valeur à la variable address. Vous pouvez également essayer d'ajouter d'autres adresses et de lire le contenu de différentes cellules.

  var address = sheet.getRange('A1').getValue();

La troisième ligne de code se connecte au service Google Maps à l'aide de l'objet Maps. newStaticMap() crée un objet de carte statique, et la méthode addMarker() ajoute un "repère" à la carte en utilisant l'adresse dans la feuille.

  var map = Maps.newStaticMap().addMarker(address);

Enfin, le service Gmail via l'objet MailApp appelle la méthode sendEmail() pour envoyer l'e-mail contenant à la fois le texte "Voir ci-dessous". et l'image de la carte en pièce jointe.

  GmailApp.sendEmail('friend@example.com', 'Map', 'See below.', {attachments:[map]});
}

6. Exécuter l'application Google Sheets, Maps et Gmail

Une fois la fonction nommée et enregistrée, exécutez-la. En haut de l'éditeur, assurez-vous que sendMap() est sélectionné dans la liste des fonctions, puis cliquez sur Exécuter.

Les développeurs apprécient de pouvoir utiliser Apps Script : vous n'avez pas besoin d'écrire de code d'autorisation pour autoriser le programme à accéder aux données de l'utilisateur. Bien qu'Apps Script gère cette tâche, les utilisateurs de votre application doivent tout de même autoriser le script à accéder à leurs feuilles de calcul et à envoyer des e-mails via Gmail. La première boîte de dialogue d'autorisation se présente comme suit:

ba6e1a798e404e0d.png

Cliquez sur Examiner les autorisations pour continuer.

La boîte de dialogue OAuth2 s'affiche, vous demandant l'autorisation d'accéder à votre feuille et d'envoyer un e-mail en votre nom:

9bed7ef1ccbd7569.png

Une fois que vous avez accordé cette autorisation, le script s'exécute intégralement.

Consultez le compte de messagerie auquel vous avez envoyé votre message. Vous devriez y trouver un e-mail contenant la mention "Plan". comme objet et un message semblable à celui-ci:

51f61fc51a13d28f.png

Lorsque vous ouvrez la pièce jointe dans l'e-mail, vous devriez obtenir une carte Google Maps avec un repère sur l'adresse que vous avez saisie dans la feuille:

739bb45b75e3f7c7.png

Avec seulement quatre lignes de code, vous avez pu accéder facilement à trois produits Google différents.

7. Ressources supplémentaires

Le code présenté dans cet atelier de programmation est également disponible dans son dépôt GitHub à l'adresse github.com/googleworkspace/apps-script-intro-codelab. Vous trouverez ci-dessous d'autres ressources qui vous permettront d'approfondir les sujets abordés dans cet atelier de programmation et de découvrir d'autres façons d'accéder aux outils Google pour les développeurs de manière programmatique.

Documentation

Vidéos

Informations et actualités

Autres ateliers de programmation

Introduction

Intermédiaire

Applications de référence