Gmail

Collecter les emails sur G-Mail avec un label spécifique.

function autoEmailFunction() {

var ss = SpreadsheetApp.getActive().getSheetByName("Sheet1");
var label = GmailApp.getUserLabelByName("Delete");
var threads = label.getThreads();

for (var i = 0; i < threads.length; i++) {
var messages = threads[i].getMessages();

for (var j = 0; j < messages.length; j++) {
var msg = messages[j].getPlainBody();
var sub = messages[j].getSubject();
var dat = messages[j].getDate();
var test = messages[j].getFrom();

ss.appendRow([dat, test,sub, msg])

}
}

threads[i].removeLabel(label); // in order to delete label everytime you run the script.
threads[i].moveToTrash(); // in order to delete email labeled everytime you run the script.
}
}

Cas d’utilisation

1

Ouvrez votre feuille de calcul

  • Nommez l'onglet de votre spreadsheets "Sheet1".

  • Ajoutez les colonnes nommĂ©es [date], [sender], [subject], [message].

2

Ouvrez App Script

On admet ici que les mails que vous souhaitez récupérer sont tag avec le label "Delete".

  • Pour ouvrir App Script, cliquez sur "Outil" > "Editeur de script".

  • Copiez-collez le code listĂ© ci-dessus dans l'Ă©diteur de script.

  • Modifiez le label "Delete", si vous souhaitez rĂ©cupĂ©rer les mails d'un label nommĂ©s diffĂ©remment.

3

Selon vos besoins, ajoutez des options

  • threads[i].removeLabel(label); permet de supprimer le label chaque fois que vous lancez le script.

  • threads[i].moveToTrash(); permet de supprimer le mail qui possède le label chaque fois que vous lancez le script.

4

Lancez le script et automatisez-le

  • Cliquez sur "Run" et lancez le script. Les informations des mails labellisĂ©s avec le tag de votre choix devrait apparaitre sur votre feuille de calcul.

  • function createTimeDrivenTriggers() {
    ScriptApp.newTrigger('autoEmailFunction')
    .timeBased()
    .everyHours(6)
    .create()
    }
  • Si vous souhaitez rĂ©pĂ©ter l'action rĂ©gulièrement, vous pouvez intĂ©grer et lancer le script ci-dessus.