Google script apps envoi de mail automatique
bonjour,
j'ai comme projet d'écrire un code google script apps qui a pour but l'envoie de mail automatique en cas d'horaire depassé.(colonne reportant les adresses mails, metier et horraire)
on a egalement des lignes ou l'on somme par metier les horraires ( cette ligne ne doit evidemment pas etre prise en compte dans la comparaison) grace à une fonction qui recherche le mot cle gesamt(somme).
c'est un tableau qui vient a s'agrandir au fil des mois , donc la dernière colonne change.
Ma première version fonctionne correctement,out ce qui est rechercher est fonctionnel, cependant la ligne suivante pose un probleme:
for (var j = 10 ; j <= derniere_colonne -1 ; j ++)
car j va changer de valeur en cas d'agrandissement du tableau.
j'ai donc creer une variable avant_derniere_colonne = derniere_colonne - 1, cela compile mais je ne recois aucun mail lors du test.
quelqun aurait il une solution à m'apporter?
crdlt
function email_multiple()
{
// definir les variables
var ss = SpreadsheetApp.getActiveSpreadsheet()
var Destinataire_mail =ss.getSheetByName('Guillaume_HOURS_Dashboard');
var texte_mail =ss.getSheetByName('Guillaume_HOURS_Dashboard');
var subject = texte_mail.getRange(280,1).getValue();
var message = texte_mail.getRange(280,2).getValue();
// Retrouver la dernière ligne et la denriere colonne
var derniere_ligne = Destinataire_mail.getLastRow();
var derniere_colonne = Destinataire_mail.getLastColumn();
// boucle + instruction
for (var i = 3; i <= derniere_ligne ; i ++)
{
for (var j = 10 ; j <= derniere_colonne -1 ; j ++)
{
var gesamt = Destinataire_mail.getRange(i,2).getValue();
var gesamtsumme = Destinataire_mail.getRange(i,1).getValue();
var emailAdress = Destinataire_mail.getRange(i,3).getValue();
var nb_heures = Destinataire_mail.getRange(i,j).getValue();
if(!gesamt.includes('gesamt')&&!gesamtsumme.includes('gesamtsumme'))
{
if(nb_heures>33095)
{
MailApp.sendEmail(emailAdress,subject,message);
}
}
}
}
}