Vous souhaitez envoyer un email avec Google Sheets lorsqu’un élément prédéfini est atteint ? Autrement dit, vous définissez un élément qui va déclencher ou non l’envoi d’un email depuis le tableur. Nous allons voir les différentes étapes pour arriver à ce résultat, comme vous le verrez c’est relativement simple et rapide.

Pour cela, nous avons besoin de plusieurs éléments, deux pour être précis.

Sommaire :

1 – Créer une feuille Google Sheets

la première étape qui semble logique, c’est de créer une feuille Google Sheets. Dans cette feuille, nous allons positionner les éléments qui nous intéresse. En l’occurrence, pour la démonstration, il s’agira uniquement d’une cellule avec un chiffre d’affaires. Bien entendu, vous pouvez l’adapter à vos besoins.

Ici, on pourrait imaginer qu’en fonction du résultat qui s’affiche dans la cellule, cela envoi automatiquement un email pour informer du résultat selon un critère que l’on aurait prévu.

Pour cela, dans la prochaine partie on va créer un script dans Google Apps Script, on pourrait alors créer une condition du type, si le chiffre d’affaires est inférieur à tant, alors envoyer l’email.

Donc, première étape, créer une feuille Google Sheets et commencer à la remplir selon nos besoins pour le script par la suite.

IMPORTANT : pour la démonstration mon chiffre d’affaires va se trouver en cellule A2.

Créer une feuille Google Sheets

2 – Code Google Apps Script pour envoyer l’email avec Google Sheets

Pour envoyer un email avec Google Sheets, on doit désormais, créer un script avec Apps Script. Pour cela, il suffit de se rendre dans l’onglet « Extensions » de notre feuille Google Sheets, puis dans le menu déroulant de cliquer sur « Google Apps Script » pour ouvrir une nouvelle page.

C’est ici que l’on va pouvoir créer le script permettant d’envoyer l’email depuis Google Sheets. Ci-dessous, voici le script en question que vous pouvez recopier et je vous l’explique plus en détail dans la suite de cet article.

function email() {

// Récupère les données
let chiffreCA = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("CA").getRange("A2");
let dataChiffreCA = chiffreCA.getValue();

let message= "Voici le chiffre d'affaires prévu : "+dataChiffreCA+".";
let sujet= "Prévision du chiffre d'affaires";

      MailApp.sendEmail(
        {
          to:"VOTRE EMAIL",
          subject: sujet,
          htmlBody : message
        }
      );

}
Script pour envoyer un email avec Google Sheets

Commençons à décortiquer notre script. Pour démarrer, il faut créer la fonction qui va accueillir notre code par la suite. Pour faire simple, je vais appeler cette fonction email. Voici le code à renseigner :

function email() {

}

2.1 – Récupérer la donnée

Maintenant que notre fonction est prête, il faut commencer par récupérer les données qui se trouvent dans notre feuille Google Sheets. Pour cela, je vais aller récupérer la donnée qui se trouve en A2 (vous devez adapter selon l’emplacement de votre donnée à récupérer), donc mon chiffre d’affaires. Dans un premier temps, on va indiquer le chemin pour accéder à la cellule A2 et on va l’envoyer à la variable « chiffreCA ». Voici le code à ajouter :

let chiffreCA = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("CA").getRange("A2");

Ensuite, on va stocker le résultat dans une nouvelle variable que l’on pourra manipuler par la suite, voici le code pour cela :

let dataChiffreCA = chiffreCA.getValue(); 

2.2 – Créer le message et le sujet de l’email

Nous avons le résultat qui contient notre chiffre d’affaires dans la variable « dataChiffreCA ». Maintenant, on va s’attaquer à la partie de l’email pour envoyer ce résultat. Pour notre email, nous allons créer le message qui sera envoyer et qui contiendra notre chiffre d’affaires. Je vais donc créer une variable « message » qui va contenir note message à envoyer par la suite.

let message= "Voici le chiffre d'affaires prévu : "+dataChiffreCA+".";

Comme vous l’avez remarquer, j’affiche le chiffre d’affaires en ajoutant la variable « dataChiffreCA ».

Maintenant, je vais créer le sujet de mon email. Pour cela, je vais créer une nouvelle variable que je vais appeler « sujet », car je suis en manque d’imagination. Dans cette dernière, je stocke le texte qui apparaîtra.

let sujet= "Prévision du chiffre d'affaires";

2.3 – Méthode MailApp.sendEmail

Tout est prêt, je vais pouvoir procéder à l’envoi de mon email. Pour cela, je vais utiliser la méthode MailApp.sendEmail. Cette dernière permet d’envoyer un email depuis Google Apps Script et donc de la coupler avec Google Sheets. Il suffit de renseigner quelques paramètres. Voici la fonction :

MailApp.sendEmail()

Maintenant, on va ajouter quelques paramètres. Pour la démonstration on va avoir besoin d’une adresse email de destination, d’un message et d’un sujet.

Cela tombe bien j’ai déjà créé le message et le sujet. Il ne me reste plus qu’a indiquer l’adresse de destination. On va donc utiliser les paramètres, mais il faudra le faire entre {}. Voici comment procéder :

MailApp.sendEmail(         
  {          
    to:"VOTRE EMAIL",          
    subject: sujet,           
    htmlBody : message        
  }       
);

On niveau du paramètre « to », c’est ici qu’il faut indiquer l’adresse email de destination. Pour les paramètres « subject » et « htmlbody », comme vous pouvez le voir, je fais appelle au variable créée précédemment et qui stockent mes valeurs. Il s’agit de « sujet » et de « message ». Comme vous l’avez compris, la première reprend le sujet qui sera envoyé et la seconde le message.

3 – Vérifier l’envoi de l’email

Désormais notre script est prêt et on peut envoyer l’email. Dans un premier temps, on va sauvegarder le script. Puis dans un second temps on va cliquer sur « Exécuter » pour tester le fonctionnement de ce dernier. Normalement, il devrait envoyer un mail.

3.1 – Donner les autorisations pour envoyer l’email avec Google Sheets

Une fois que vous aurez cliqué sur « Exécuter » vous devriez avoir une fenêtre qui s’ouvre indiquant que ce projet demande une autorisation supplémentaire. Il faudra cliquer sur « Examiner les autorisations » et passer outre l’alerte.

Autorisation d'un script Google

Pourquoi il ne faut pas s’inquiéter ? Car c’est notre code à nous, ce n’est pas un code malveillant, il demande simplement a accéder à notre feuille Google Sheets. Le soucis, c’est que Google ne sait pas que notre code n’a pas de partie malveillante, donc il nous demande de confirmer (en gros, pour résumer).

Une fois validé, vous devriez avoir un message indiquant que le script a bien été exécuté, sinon vous aurez un message d’erreur. Il ne vous reste plus qu’a vérifier au niveau de l’adresse email que vous aviez indiqué que le mail est bien arrivé.

Vérifier l'envoi d'un email

3.2 – Créer un déclencheur

Maintenant que tout fonctionne, vous pouvez ajouter une fonctionnalité à votre script en créant un déclencheur pour l’envoi de l’email depuis Google Sheets. Pour cela, il suffit d’aller dans le menu de gauche et de cliquer sur « Déclencheurs ».

On peut aller paramétrer le type de déclenchement du script. Dans un premier temps, il faudra sélectionner la fonction. Donc celle que l’on vient de créer. Puis on pourra sélectionner le type de déclenchement, par exemple horaire.

Créer un déclencheur pour son script

Dès lors, on pourra activer les heures qui nous intéresse pour l’exécution du script.

4 – Résumé pour envoyer un email avec Google Sheets

Voilà, nous venons de voir les différentes étapes pour envoyer un email avec Google Sheets, ci-dessous, je vous propose un petit résumé des différentes étapes :

  • 1. Ouvrez une feuille Google Sheets
  • 2. Sélectionnez l’onglet « Extensions » dans la barre de menus en haut de l’écran puis « Apps Script ».
  • 3. Dans la nouvelle page qui s’affiche, ajoutez une fonction et utiliser la méthode MailApp.sendEmail().
  • 4. Donner l’autorisation pour envoyer une email depuis votre feuille Google Sheets.
  • 5. Cliquez sur « Envoyer » pour tester l’envoi.
  • 6. Ajouter un déclencheur si vous souhaitez automatiser l’envoi de votre email.