Envoyer des mails automatiquement depuis un Sheet

Bonjour à tous !

Dans le cadre de mon travail, je suis amener à énormément utiliser Google Sheets. J'ai notamment créé dessus le fichier qui permet de suivre l'évolution de tout le service opérationnel de l'entreprise ou je travaille.

Sur ce Sheets, les données de toutes les affaires gagnées y sont entré via un Google Forms. Ce que je cherche à faire c'est envoyer un mail depuis ce sheet avec les informations reçu sur le dit sheet.

Je suis pas sûr d'être compréhensible donc n'hésitez pas à poser vos questions, je vous répondrai.

J'ai fait plusieurs recherche, j'ai trouvé plusieurs scripts, j'ai créé un Docs avec le template du mail etc mais rien à faire je n'arrive pas à le faire fonctionner.

J'arrive à m'y retrouver en code, la moindre brique pourrait m'aider à finir ce projet et je vous remercie tous pour votre aide !

Bonne journée !

je c'est pas si sa peux t'aidé mais j'ai ce code. Quand j'inscris *RECU* dans la colonne K, sa envoie un mail avec certaine donné de la ligne. reste a toi de le convertir pour ton document

function onEdit(event) {
  var commande = event.source.getActiveSheet();
  var cel = event.source.getActiveRange();
  if ((cel.getColumn() == 11) && (cel.getValue() == 'REÇU')) {
    sendEmail(cel.getRow())
  };
}

function sendEmail(i) {

  //definir les variables

    var ss = SpreadsheetApp.getActiveSpreadsheet()
    var Liste_commande =ss.getSheetByName('commande');
    var Texte_mail =ss.getSheetByName('Message');
    var subject = Texte_mail.getRange(2,1).getValue();

    // retrouver la dernière ligne

      var emailAdress = Texte_mail.getRange(2,4).getValue();
      var job=Liste_commande.getRange(i, 1).getValue();
      var description=Liste_commande.getRange(i, 5).getValue();
      var unite=Liste_commande.getRange(i, 3).getValue();
      var message = Texte_mail.getRange(2,2).getValue();

      // remplacer les mots clefs

      message = message.replace("<description>", description).replace("<job>", job).replace("<unite>", unite);

      //envoyer les mails

      MailApp.sendEmail(emailAdress,subject,message);
function envoimail(event) {

var cellule = event.source.getActiveRange();  
var ui = SpreadsheetApp.getUi();
var feuille = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var fuseauHoraire = Session.getScriptTimeZone();

//Onglet où tu as tes données
if (feuille.getName()=='Truc'){

// Colonne où tu mets une case à cocher pour envoyer le mail (ici 14)
//si la cellule est cochée, le script s'exécute
if (cellule.getColumn()==14 && cellule.getValue()) {

var email = feuille.getRange("J"+cellule.getRow()).getValues().toString(); 
// Récupération de  l'e-mail de la colonne J de la ligne avec la case cochée

      // Envoyer le courriel
      MailApp.sendEmail({
        to: email,
        cc: 'adresses séparées par une virgule',
        subject: "blabla", // Objet ici
        name: "machin", // Votre nom ici
        body: " tu peux écrire tout ce que tu veux, et insérer des données de ta feuille en utilisant "+ feuille.getRange("K"+cellule.getRow()).getValues() +.",
 // Corps du courriel ici
      })

    feuille.getRange("S"+cellule.getRow()).setValue(Utilities.formatDate(new Date(), fuseauHoraire, "dd/MM/yyyy HH:mm:ss"));
    //}
}
image

Et ajoute un déclencheur en sélectionnant ta fonction de tête, et choisir "lors d'une modification"

Rechercher des sujets similaires à "envoyer mails automatiquement sheet"