FRFAM.COM >> Famille >> Technologie &Innovation >> Informatique

Tutoriel : Envoyer des e-mails automatisés depuis Google Sheets avec Google Apps Script

Google Apps Script est un outil puissant pour automatiser les applications Google Workspace comme Sheets et Docs. L'envoi automatique d'e-mails en fait un allié indispensable pour booster votre productivité.

Que vous soyez employé souhaitant alerter votre manager avec des calculs automatisés, ou manager distribuant des rapports de performance à votre équipe, ce tutoriel vous guide pas à pas. Économisez des heures grâce à une configuration unique.

Avec un effort initial minimal, laissez Google Apps Script devenir votre assistant personnel et automatisez l'envoi de données sensibles ou récurrentes.

Configurer votre feuille pour l'envoi d'e-mails

Commencez par préparer une feuille dédiée contenant les noms, adresses e-mail et messages personnalisés. Dans cet exemple concret, j'utilise une feuille import ant des données Google Analytics pour compter les articles publiés par auteur et notifier chacun individuellement.

Créez une nouvelle feuille nommée « Envoyer des e-mails » dans votre Google Sheets.

Tutoriel : Envoyer des e-mails automatisés depuis Google Sheets avec Google Apps Script

Cette feuille structure chaque ligne comme un e-mail : colonnes pour nom, e-mail, et segments de message assemblés dynamiquement par le script.

Tutoriel : Envoyer des e-mails automatisés depuis Google Sheets avec Google Apps Script

Adaptez la taille et la structure selon vos besoins, en combinant texte statique et formules dynamiques tirées d'autres feuilles.

Tutoriel : Envoyer des e-mails automatisés depuis Google Sheets avec Google Apps Script

Les cellules statiques restent fixes ; les dynamiques s'actualisent via des fonctions comme IMPORTRANGE ou QUERY.

Tutoriel : Envoyer des e-mails automatisés depuis Google Sheets avec Google Apps Script

À l'ouverture de votre rapport mensuel, un menu personnalisé déclenchera l'envoi. Découvrez comment ci-dessous.

Votre feuille finale ressemble à ceci :

Tutoriel : Envoyer des e-mails automatisés depuis Google Sheets avec Google Apps Script

Passons au script !

Rédiger le script d'envoi automatisé

Accédez à l'éditeur via Outils > Éditeur de scripts.

Tutoriel : Envoyer des e-mails automatisés depuis Google Sheets avec Google Apps Script

Créez une nouvelle fonction et collez ce code Apps Script corrigé et optimisé :

function sendArticleCountEmails() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  ss.setActiveSheet(ss.getSheetByName('Envoyer des e-mails'));
  var sheet = SpreadsheetApp.getActiveSheet();
  var dataRange = sheet.getRange('A2:F4');
  var data = dataRange.getValues();
  for (var i = 0; i < data.length; i++) {
    var rowData = data[i];
    var emailAddress = rowData[1];
    var destinataire = rowData[0];
    var message1 = rowData[2];
    var message2 = rowData[3];
    var parametre2 = rowData[4];
    var message3 = rowData[5];
    var message = 'Cher ' + destinataire + ',\n\n' + message1 + ' ' + message2 + ' ' + parametre2 + ' ' + message3;
    var subject = 'Votre article compte pour ce mois';
    MailApp.sendEmail(emailAddress, subject, message);
  }
}

Ce script est simple et robuste. Décomposons-le pour une compréhension experte.

Décomposition du code

Activez d'abord la bonne feuille :

var ss = SpreadsheetApp.getActiveSpreadsheet();
ss.setActiveSheet(ss.getSheetByName('Envoyer des e-mails'));

Extrayez les données :

var sheet = SpreadsheetApp.getActiveSheet();
var dataRange = sheet.getRange('A2:F4');
var data = dataRange.getValues();

Parcourez les lignes :

for (var i = 0; i < data.length; i++) {
  var rowData = data[i];
  // Accès : rowData[0] = nom, rowData[1] = e-mail, etc.
}

Assemblez le message avec \n pour sauts de ligne :

var message = 'Cher ' + destinataire + ',\n\n' + message1 + ' ' + message2 + ' ' + parametre2 + ' ' + message3;

Envoyez via MailApp.sendEmail(). Personnalisez sujet et corps à l'infini.

Déclencher le script via un menu personnalisé

Dans l'éditeur, modifiez ou ajoutez la fonction onOpen :

function onOpen() {
  var spreadsheet = SpreadsheetApp.getActive();
  var menuItems = [
    {name: 'Envoyer des e-mails', functionName: 'sendArticleCountEmails'}
  ];
  spreadsheet.addMenu('Automatisations', menuItems);
}
Tutoriel : Envoyer des e-mails automatisés depuis Google Sheets avec Google Apps Script

Un clic suffit pour tout envoyer. Testez toujours en mode aperçu !

Google Apps Script : votre allié pour gagner du temps

Ce tutoriel illustre l'automatisation d'un rapport Analytics, mais étendez à bien plus : imports automatisés, dashboards... L'investissement initial paie des heures libérées. Partagez vos astuces en commentaires !

[]