Google Apps Script en JavaScript ou VBA

Quelques commentaires sur ce code

function repauto() {
  // on définit la variable libelle
  var libelle = GmailApp.getUserLabelByName('ReponseAuto');
  // on définit la variable conversation (qui est un tableau) ... Thread signifie fil
  var conversation = libelle.getThreads();
  // pour chaque conversation
  for(i in conversation){
    // si celle-ci n'est pas lue
    if(conversation[i].isUnread()){
      /* on prend le dernier message de la conversation
      je n'ai pas retouché cette partie qui a du faire l'objet d'une longue mise au point en 2014 */
      var message = conversation[i].getMessages()[Number(conversation[i].getMessageCount()-1)];
      // on en extrait le corps du message
      var texte =  message.getPlainBody(); 
      /* est-ce que dans ce message je peux trouver une adresse mail ? 
      /\S+@\S+\.\S+/g est ce que l'on appelle une expression régulière 
      \S+ veut dire n'importe quels caractères au pluriel (+) sauf un espace
      suivi de @ suivi de n'importe quels caractères suivi d'un point suivid de n'importe quels caractères */
      var from = texte.match(/\S+@\S+\.\S+/g);
      // la réponse est un tableau, s'il existe un moins un élément
      if ( from.length ) {
        // je prends le premier trouvé
        var email = from[0];
        // j'initialise le titre
        var titre = "";
        // j'initialise le corps du futur message
        var corps = "Bonjour,\n";
        // si dans le texte du messag recçu il y a ...
        if (texte.match("Horaires")){
          titre = "Concernant votre demande sur les horaires d'ouverture";
          corps = corps + "Nous sommes ouverts de 09H00 à 12h00 puis de 14h00 à 18h00.";
        }
        else if (texte.match("Inscription")){
          titre = "Concernant votre demande sur comment s'inscrire";
          corps = corps + "cas 2";
        }
        else if (texte.match("Délais")){
          titre = "Concernant votre demande sur le temps qu'on met à répondre";
          corps = corps + "cas 3";
        }
        else if (texte.match("Cantine")){
          titre = "Concernant votre demande sur la mise à disposition de nourriture";
          corps = corps + "cas 4";
        }
        else if (texte.match("Couche")){
          titre = "Concernant votre demande de vêtements de change pour bébé";
          corps = corps + "cas 5";
        }; 
        // fin du message
        corps = corps + "\nCordialement,\nsigné ..."; 
        // envoi
        MailApp.sendEmail(email,titre,corps); 
        // la conversation est alors marquée lue
        conversation[i].markRead();
      }
    }
  } 
}

"Le prospect souhaite être recontacté sur l'email: blablabla"

Puisque l'email est précédé d'un espace, ceci fonctionnera

      /* est-ce que dans ce message je peux trouver une adresse mail ? 
      /\S+@\S+\.\S+/g est ce que l'on appelle une expression régulière 
      \S+ veut dire n'importe quels caractères au pluriel (+) sauf un espace
      suivi de @ suivi de n'importe quels caractères suivi d'un point suivid de n'importe quels caractères */
      var from = texte.match(/\S+@\S+\.\S+/g);

Par contre, je ne sais pas par quoi il est suivi !

Pourrais-tu me renvoyer un mail sur ma messagerie ? voir en mp l'email à utiliser

Hello,

1)Quand tu dis: « Bien vu !

C'est presque par habitude que je l'ai prévu ... mais c'est complètement inutile. A supprimer donc (en laissant juste le ; »

Très honnêtement, je n’ai rien compris à cette phrase, en fait ma demande est: si aucun des 5 cas prévus n’est présent alors le Google App Script ne doit pas se déclencher, l’email n’est pas filtré/ labellisé, il apparaît comme non lu dans ma boîte de réception, et je dois y répondre manuellement.

Donc quand tu dis « A supprimer donc (en laissant juste le ; », je ne comprends pas du tout ce que je dois faire, est ce que tu pourrais s’il te plaît copié collé l’avant dernier script qui fonctionnait, celui que tu m’avais donné (celui où il n’y avait pas de commentaire en français) et supprimer ou laisser les éléments qu’il faut supprimer ou laisser, comme ça je supprimerai mon script et je le remplacerai par celui que tu vas me modifier s’il te plaît.

2)Merci pour les commentaires en français

3)Que veut dire en français « function repauto() { » ?

4)Que veut dire « /* on prend le dernier message de la conversation

je n'ai pas retouché cette partie qui a du faire l'objet d'une longue mise au point en 2014 */ » ?

5)Que veut dire « \S+ veut dire n'importe quels caractères au pluriel » ? Lorsqu’on a un e-mail ce qui est devant le @ est rarement au pluriel donc je n’y comprends rien. Généralement c’est notre prénom ou notre nom qui est devant le @ et il n’est jamais au pluriel.

6)Une autre que je me demande , mais je pense que j’airai la réponse quand tu répondras à ma question 1) ci-dessus : de manière générale en informatique, est ce qu’il fait dire à un script quels sont les cas exclus, par exemple dans mon script je veux que mon script réagisse en fonction de 5 cas prévus, ma question est donc si ces 5 cas n’arrivent pas est ce que le script comprend qu’il ne fait rien faire OU est ce que je dois coder un code dans le 6 eme cas qui dirait « si aucun des 5 cas ci-dessus n’arrivent alors ne fais rien, ne déclenche rien »?

7)Je ne comprends pas du tout y’a dernière phrase « Par contre, je ne sais pas par quoi il est suivi !

Pourrais-tu me renvoyer un mail sur ma messagerie ? voir en mp l'email à utiliser » est ce que tu peux reformuler ta question s’il te plaît?

8)Hier je t’avais dit que j’allais faire un test aujourd’hui samedi avec le 6eme cas du script mais , du coup, je vais d’abord attendre que tu répondes à ma question 1) ci dessus puis je vais écraser mon script puis je vais faire le test puis je te tiens informé sur ce forum.

Comme je te le disais tout à l’heure, dans ma question 1) inutile de mettre des commentaires en français, je voudrais juste que tu ajoutes ou supprimes ce qu’il y a à ajouter ou supprimer pour gérer le cas ou aucun des 5 cas n’est présent.

Merci d’avance

Et désolée pour le roman.

Bon, je vais tenter de te rassurer, et te répondre en plusieurs chapitres ...

3)Que veut dire en français « function repauto() { » ?

C'est la fonction que nous avons créée et qui sera lancée à intervalles réguliers.

J'ai donné le nom repauto comme réponse automatique, mais on peut y mettre ce que l'on veut !

ma demande est: si aucun des 5 cas prévus n’est présent alors le Google App Script ne doit pas se déclencher, l’email n’est pas filtré/ labellisé, il apparaît comme non lu dans ma boîte de réception, et je dois y répondre manuellement

Si les filtres sont bien réalisés, il y en aura 5 pas un de plus pas un de moins, et ils contiendront chacun :

prospect intéressé Horaires recontacté

prospect intéressé Inscription recontacté

prospect intéressé Délais recontacté

prospect intéressé Cantine recontacté

prospect intéressé Couche recontacté

voir ici : https://forum.excel-pratique.com/viewtopic.php?p=841495#p841495

Cela correspond à chacun des 5 cas, il n'y aura donc pas de 6ème cas, que je supprime dans le script !

Les mails qui resteront non lus sont ceux qui n'auront pas été "labellisés".

dans mon script je veux que mon script réagisse en fonction de 5 cas prévus, ma question est donc si ces 5 cas n’arrivent pas est ce que le script comprend qu’il ne fait rien faire OU est ce que je dois coder un code dans le 6 eme cas qui dirait « si aucun des 5 cas ci-dessus n’arrivent alors ne fais rien, ne déclenche rien »?

le script ne fera rien puisque le mail n'aura pas été repéré avec les critères ci-dessus et donc n'aura pas été labellisé

Donc quand tu dis « A supprimer donc (en laissant juste le ; », je ne comprends pas du tout ce que je dois faire, est ce que tu pourrais s’il te plaît copié collé l’avant dernier script qui fonctionnait, celui que tu m’avais donné (celui où il n’y avait pas de commentaire en français) et supprimer ou laisser les éléments qu’il faut supprimer ou laisser, comme ça je supprimerai mon script et je le remplacerai par celui que tu vas me modifier s’il te plaît.

ok, je te donnerai le dernier script à mettre, avec et sans commentaire, tu choisiras !

/* on prend le dernier message de la conversation

je n'ai pas retouché cette partie qui a du faire l'objet d'une longue mise au point en 2014 */

en fait je n'ai pas voulu me lancer dans de grandes explications de ce bout de code que j'avais mis au point en 2014 et qui fonctionne bien pour ce qui est de la télésurveillance par caméra ...

En fait, mais attention cela risque d'embrouiller, google ne gère pas seulement des messages, mais des conversations suivies (des fils) et comme mes caméras m'envoient des rafales de plusieurs emails, google les mets dans la même conversation / même fil ... je ne prends que le dernier message du fil pour me retourner un seul sms d'alerte

5)Que veut dire « \S+ veut dire n'importe quels caractères au pluriel » ? Lorsqu’on a un e-mail ce qui est devant le @ est rarement au pluriel donc je n’y comprends rien. Généralement c’est notre prénom ou notre nom qui est devant le @ et il n’est jamais au pluriel.

7)Je ne comprends pas du tout y’a dernière phrase « Par contre, je ne sais pas par quoi il est suivi !

Pourrais-tu me renvoyer un mail sur ma messagerie ? voir en mp l'email à utiliser » est ce que tu peux reformuler ta question s’il te plaît?

le \S veut dire que le script recherchera n'importe quel caractère sauf un espace

le + veut dire plusieurs fois le \S

si le mail est écrit comme ceci dans le texte

"la personne souhaite être recontactée au:prenom.nom@fai.fr,merci de bla bla"

, alors je crains que le script ne prenne ceci en compte comme adresse mail

au:prenom.nom@fai.fr,merci

et non

prenom.nom@fai.fr

c'est pour cela que je souhaite voir que l'email est bien précédé par un espace et suivi par un espace ou un retour à la ligne,

sinon je changera cette expression bizzaroide pour ne tenir compte que des lettres et chiffres.

8)Hier je t’avais dit que j’allais faire un test aujourd’hui samedi avec le 6eme cas du script mais , du coup, je vais d’abord attendre que tu répondes à ma question 1) ci dessus puis je vais écraser mon script puis je vais faire le test puis je te tiens informé sur ce forum.

tiens, on a eu la même idée

j'ai fait le test et j'ai eu un email sans titre avec

Bonjour,

Cordialement,

Hello,

1)Quand tu dis:

« c'est pour cela que je souhaite voir que l'email est bien précédé par un espace et suivi par un espace ou un retour à la ligne,

sinon je changera cette expression bizzaroide pour ne tenir compte que des lettres et chiffres. »

Je te confirme que:

Dans tous les cas l’email que le script recontactera sera soit précédé d’un espace soit précédé d’un retour à la ligne.

Et dans tous les cas l’email que le script recontactera sera soit suivi d’un espace soit suivi d’un retour à la ligne.

Par exemple nous n’aurons jamais ce cas là:

au:prenom.nom@fai.fr,merci

C’est à dire que nous n’aurons jamais un cas ou le « r » de « fr » est collé à la virgule qui est collée au « m » de « merci », ça n’arrivera jamais.

2)Tu dis « sinon je changera cette expression bizzaroide pour ne tenir compte que des lettres et chiffres. »

Je pense que ça va créer des erreurs car 100% des gens n’ont pas que des lettres et des chiffres dans leur e-mail, certains ont des caractères spéciaux tels que des points « . » , des tirets du 6 « - »

, des tirets du 8 « _ », etc...

À mon avis il ne faut pas dire au script de prendre que des emails avec des chiffres et des lettres, il faudrait une instruction simple comme « prends le 1er e-mail que tu trouves dans le corps du mail peu importe ce que contient cet email, des chiffres, des lettres, des caractères spéciaux, etc. ».

3)Quand tu dis:

« tiens, on a eu la même idée

j'ai fait le test et j'ai eu un email sans titre avec

Bonjour,

Cordialement, »

Dans ce cas là ça veut dire que le script n’est effectivement pas parfait pour le moment et qu’il faudrait qu’on l’améliore.

Parceque la, le fait qu’il envoie des mails même quand on n’est pas dans l’1 des 5 cas prévu ça n’est pas bon du tout.

4)Quand tu dis :

« ok, je te donnerai le dernier script à mettre, avec et sans commentaire, tu choisiras ! »

Déjà je te remercie beaucoup.

Je pense que dans un 1er temps c’est mieux de me le redonner corriger sans commentaire, après je pourrais faire plain de tests dessus, et si je ne trouve aucun problème, à ce moment là je de dirai qu’il est parfait et je te demanderai de bien vouloir me le reposter une dernière fois en y ajoutant les commentaires.

Pourquoi est ce que je te demande ça ? Parceque je n’ai pas envie que tu perdes du temps à le poster avec des commentaires alors que si ça se trouve je vais de nouveau trouver quelque chose qui ne fonctionne pas et je vais de nouveau te demander, avec ta bienveillance, de bien vouloir me le corriger, donc disons que le script avec les commentaires je préfère que ce soit la toute dernière étape du script qui fonctionnera à merveille.

Encore merci.

3)Quand tu dis:

« tiens, on a eu la même idée

j'ai fait le test et j'ai eu un email sans titre avec

Bonjour,

Cordialement, »

Dans ce cas là ça veut dire que le script n’est effectivement pas parfait pour le moment et qu’il faudrait qu’on l’améliore.

Parceque la, le fait qu’il envoie des mails même quand on n’est pas dans l’1 des 5 cas prévu ça n’est pas bon du tout.

En fait j'ai juste truandé ... j'ai envoyé un mail avec glouglou mais sans aucune des 5 autres options (horaires, inscription, etc.)

Demain matin je te refais le synoptique complet ...

  • depuis l'arrivée du mail, le passage par le filtre, la pose du label (partie gmail)
  • ensuite le fonctionnement du script : la recherche du premier email, la recherche du cas, la rédaction de l'email et l'envoi (script du drive)

Merci oui ça serait parfait d’avoir le synoptique complet parceque je t’avoue que je commence à m’y perdre un peu parmi toutes les pages du forum que j’ai ouvert.

Je pense qu’une bonne chose serait peut être que je supprime « glouglou » de mes filtres,

Peut être faudrait il intégrer la suppression de « glouglou » dans les filtres à l’intérieur de ton synoptique (même si je pense que jamais personne ne m’enverra un e-mail contenant « glouglou » mais je suis perfectionniste et j’aime bien quand rien ne déborde).

Hâte d’être à demain pour suivre tes instructions et finaliser mes tests.

Le synoptique ...

drive repauto
  • pour la partie gmail :
    un mail arrive
  • gmail applique les 5 filtres et appose le label RepAuto sur le mail si l'un des 5 filtres est ok
    oui, il faut maintenant créer les 5 filtres et enlever glouglou; ma proposition est d'en faire d'abord un et voir comment cela se passe ... ensuite faire les 4 autres filtres
  • pour la partie script :
    la fonction se déclenche toutes les demi-heures
    il faut donc définir le déclencheur si ce n'est pas déjà fait
  • elle recherche toutes les adresses email dans le corps du message reçu
    c'est la simple instruction var from = texte.match(/\S+@\S+\.\S+/g); qui fait le balayage du message de gauche à droite, du premier au dernier caractère et qui va construire un tableau contenant toutes les adresses trouvées
  • elle prend la première adresse email comme destinataire du message de retour
    les indices vont de 0 à n-1 s'il y a n adresses email trouvées, donc le script prend la première qui est from(0)
  • la fonction recherche quel est le cas (horaires, délais, etc.)
    attention à la casse (majuscules/minuscules)
  • elle définit le titre et le message en fonction du cas identifié
    il te reste bien sûr à mettre le titre et le message que tu souhaites pour chaque cas dans le script ci-dessous
    ainsi que ta signature en bas du mail
  • elle envoie le mail de retour et note le message reçu comme lu
function repauto() {
  var libelle = GmailApp.getUserLabelByName('ReponseAuto');
  var conversation = libelle.getThreads();
  for(i in conversation){
    if(conversation[i].isUnread()){
      var message = conversation[i].getMessages()[Number(conversation[i].getMessageCount()-1)];
      var texte =  message.getPlainBody(); 
      var from = texte.match(/\S+@\S+\.\S+/g);
      if ( from.length ) {
        var email = from[0];
        var titre = "";
        var corps = "Bonjour,\n";
        if (texte.match("Horaires")){
          titre = "Concernant votre demande sur les horaires d'ouverture";
          corps = corps + "Nous sommes ouverts de 09H00 à 12h00 puis de 14h00 à 18h00.";
        }
        else if (texte.match("Inscription")){
          titre = "Concernant votre demande sur comment s'inscrire";
          corps = corps + "cas 2";
        }
        else if (texte.match("Délais")){
          titre = "Concernant votre demande sur le temps qu'on met à répondre";
          corps = corps + "cas 3";
        }
        else if (texte.match("Cantine")){
          titre = "Concernant votre demande sur la mise à disposition de nourriture";
          corps = corps + "cas 4";
        }
        else if (texte.match("Couche")){
          titre = "Concernant votre demande de vêtements de change pour bébé";
          corps = corps + "cas 5";
        }; 
        corps = corps + "\nCordialement,\nsigné ..."; 
        MailApp.sendEmail(email,titre,corps); 
        conversation[i].markRead();
      }
    }
  } 
}

Ensuite, pour moi tu es autonome. Si le site évolue en définissant un nouveau cas ... tu crées un nouveau filtre et tu ajoutes les instructions correspondantes dans le script à l'image d'un des cas existant.

Est-ce qu'il existe des situations où une personne fait plusieurs demandes en rafale ? genre Délais, Horaires, Cantine par exemple...

Car ici je ne traite que la dernière.

Donc dans le cas de plusieurs demandes en rafale, prends ce script ...

function repauto() {
  var libelle = GmailApp.getUserLabelByName('ReponseAuto');
  var conversation = libelle.getThreads();
  for(c in conversation){
    for(var m = 0; m < conversation[c].getMessageCount() ; m++){
      var message = conversation[c].getMessages()[m];
      if(message.isUnread()){
        var texte =  message.getPlainBody(); 
        if ( texte.match(/\S+@\S+\.\S+/g) ) {
          var from = texte.match(/\S+@\S+\.\S+/g);
          if ( from.length ) {
            var email = from[0];
            var titre = "";
            var corps = "Bonjour,\n";
            if (texte.match("Horaires")){
              titre = "Concernant votre demande sur les horaires d'ouverture";
              corps = corps + "Nous sommes ouverts de 09H00 à 12h00 puis de 14h00 à 18h00.";
            }
            else if (texte.match("Inscription")){
              titre = "Concernant votre demande sur comment s'inscrire";
              corps = corps + "cas 2";
            }
            else if (texte.match("Délais")){
              titre = "Concernant votre demande sur le temps qu'on met à répondre";
              corps = corps + "cas 3";
            }
            else if (texte.match("Cantine")){
              titre = "Concernant votre demande sur la mise à disposition de nourriture";
              corps = corps + "cas 4";
            }
            else if (texte.match("Couche")){
              titre = "Concernant votre demande de vêtements de change pour bébé";
              corps = corps + "cas 5";
            }; 
            corps = corps + "\nCordialement,\nsigné ..."; 
            MailApp.sendEmail(email,titre,corps); 
            message.markRead();
          }
        }
      }
    }
  }
}

Hello,

Tu dis "Est-ce qu'il existe des situations où une personne fait plusieurs demandes en rafale ? genre Délais, Horaires, Cantine par exemple...

Car ici je ne traite que la dernière."

Ma réponse est: Je ne suis pas sûre d'avoir compris ta question donc je vais te répondre avec des exemples, il faudrait que le script prenne en compte les cas suivants:

1) Si une personne va sur notre site internet et au niveau de la liste déroulante clique sur "Horaires" et clique aussi sur "Inscription", il faudrait que le script lui envoie un email réponse pour "Horaires"et un autre email réponse pour "Inscription".

La personne recevra donc 2 emails différents dans sa boîte de réception.

Je te précise qu'actuellement elles n'ont le droit de faire qu'un seul choix dans la liste déroulante mais je préfère prévoir le cas où dans le futur il leur serait laissé la possibilité de cliquer sur plusieurs choix (parmi les 5 choix possibles) de la liste déroulante de notre site internet.

Autre exemple un peu fou: si la personne va sur notre site internet et au niveau de la liste déroulante elle clique sur les 5 choix possibles et qu'elle envoie sa demande, alors le script lui enverra 5 emails différents dans sa boîte de réception.

2) Si une personne va sur notre site internet et fait une demande pour "Couche", puis plus tard elle va sur notre site internet et fait une autre demande pour "Délais", il faut que notre script lui envoie un email réponse pour "Couche"et un autre email réponse pour "Délais".

La personne recevra donc 2 emails différents dans sa boîte de réception.

Autre exemple un peu fou: si une personne va su notre site internet et fait une demande pour "Couche", puis fait totalement une autre demande pour "Délais", puis fait totalement une demande pour "Horaires", puis fait totalement une autre demande pour "Couche" alors notre script lui enverra 4 emails différents qu'elle recevra dans sa boîte de réception.

3) Si une personne va sur notre site internet et fait une demande pour "Cantine", puis plus tard elle va sur notre site internet et fait une autre demande pour "Cantine", , il faut que notre script lui envoie un email réponse pour "Cantine"et un autre email réponse pour "Cantine".

La personne recevra donc 2 emails différents dans sa boîte de réception.

Autre exemple un peu fou: Si quelqu’un va sur notre site internet et s'amuse à faire une 1ère demande pour ""Horaires", puis plus tard elle fait une 2ème demande pour "Horaires", puis plus tard elle fait une 3ème demande pour "Horaires", puis plus tard elle fait une 4ème demande pour "Horaires", puis plus tard elle fait une 5ème demande pour "Horaires", puis plus tard elle fait une 6ème demande pour "Horaires", puis plus tard elle fait une 7ème demande pour "Horaires", puis plus tard elle fait une 8ème demande pour "Horaires", puis plus tard elle fait une 9ème demande pour "Horaires"

Alors le script lui enverra au total 9 emails différents.

J'ai donc 2 questions à te poser;

[u]Est ce que ton 2ème script prend en compte les 3 cas ci-dessus qui sont ce que j'appelle des cas "en rafale"?

Y aurait-il selon toi d'autres cas "en rafale" auxquels tu penses et auxquels je n'aurai pas penser ci-dessus dans les 3 cas que j'ai cité? si oui, lesquels?[/u]

Merci.

C'est donc ok maintenant pour 2 et 3. Pas pour le cas 1 mais je peux le prévoir. Ce que je vais faire d'ici demain matin. La modification est facile.

Ce que je te propose avant le grand saut ... c'est écrire des mails avec par exemple pour le cas 1

glouglou fghjk Horaires Délais ton_adresse_mail une_autre_adresse_mail

de façon à ce que tu sois bien rassurée

  • que c'est le premier mail trouvé qui servira de destinataire
  • que les mails sont bien tous partis

Mais fais-le aussi pour le cas 2 avec 2 mails différents sur 2 sujets différents.

Mets toujours glouglou qui est le seul mot qui sert encore de filtre aujourd'hui

Voici ...

function repauto() {
  var libelle = GmailApp.getUserLabelByName('ReponseAuto');
  var conversation = libelle.getThreads();
  for(c in conversation){
    for(var m = 0; m < conversation[c].getMessageCount() ; m++){
      var message = conversation[c].getMessages()[m];
      if(message.isUnread()){
        var texte =  message.getPlainBody(); 
        if ( texte.match(/\S+@\S+\.\S+/g) ) {
          var from = texte.match(/\S+@\S+\.\S+/g);
          if ( from.length ) {
            var email = from[0];
            if (texte.match("Horaires")){
              var titre = "Concernant votre demande sur les horaires d'ouverture";
              var corps = "Bonjour,\nNous sommes ouverts de 09H00 à 12h00 puis de 14h00 à 18h00.\nCordialement,\nsigné ...";
              MailApp.sendEmail(email,titre,corps); 
              message.markRead();
            };
            if (texte.match("Inscription")){
              var titre = "Concernant votre demande sur comment s'inscrire";
              var corps = "Bonjour,\ncas 2\nCordialement,\nsigné ...";
              MailApp.sendEmail(email,titre,corps); 
              message.markRead();
            };
            if (texte.match("Délais")){
              var titre = "Concernant votre demande sur le temps qu'on met à répondre";
              var corps = "Bonjour,\ncas 3\nCordialement,\nsigné ...";
              MailApp.sendEmail(email,titre,corps); 
              message.markRead();
            };
            if (texte.match("Cantine")){
              var titre = "Concernant votre demande sur la mise à disposition de nourriture";
              var corps = "Bonjour,\ncas 4\nCordialement,\nsigné ...";
              MailApp.sendEmail(email,titre,corps); 
              message.markRead();
            };
            if (texte.match("Couche")){
              var titre = "Concernant votre demande de vêtements de change pour bébé";
              var corps = "Bonjour,\ncas 5\nCordialement,\nsigné ...";
              MailApp.sendEmail(email,titre,corps); 
              message.markRead();
            }; 
          }
        }
      }
    }
  }
}

J'ai fait un test d'envoi d'un email avec :

glouglou

Inscription

Délais

Cantine

Couches

Horaires

mon adresse email

et j'ai bien eu 5 messages en retour ...

Steelson,

1)Quand tu dis « C'est donc ok maintenant pour 2 et 3 », est-ce que tu es en train de faire référence au script que tu m’as posté sur ce forum le 1 mars 2020, 13:36 ou est-ce que tu es en train de faire référence au script que tu m’as posté sur ce forum le 1 mars 2020, 21:14 ?

2)Quand tu dis « Pas pour le cas 1 mais je peux le prévoir. Ce que je vais faire d'ici demain matin. La modification est facile. », est-ce que le cas 1 et 2 et 3 correspond au script que tu as posté sur le forum le 1 mars 2020, 21:14 ou est ce que le cas 1 et 2 et 3 correspond à un script que tu n’as pas encore posté sur le forum et que tu vas poster sur le forum dans un futur proche?

Merci.

Entre 21:41 et 22:14 j'ai eu le temps de modifier le script et le tester

Il respecte les 3 cas ... tu peux y aller, et faire des tests comme suggérés !!

Bon courage

Alors ... des news ?

Rechercher des sujets similaires à "google apps script javascript vba"