Automatisez le transfert de pièces jointes PDF dans Gmail avec Apps Script

Vous recevez régulièrement des e-mails avec des pièces jointes PDF que vous devez transférer à un collaborateur ou un client ? Effectuer cette tâche manuellement peut devenir fastidieux. Heureusement, grâce à Google Apps Script, il est possible d’automatiser ce processus de manière simple et efficace. Dans cet article, nous allons créer un script qui transfère automatiquement les fichiers PDF reçus d’un expéditeur spécifique vers une adresse e-mail définie.

Pourquoi automatiser le transfert des pièces jointes ?

L’automatisation présente plusieurs avantages :

  • Gain de temps : Plus besoin de rechercher et transférer manuellement les pièces jointes.
  • Réduction des erreurs : Le risque d’oubli est éliminé.
  • Efficacité accrue : Vous pouvez vous concentrer sur des tâches à plus forte valeur ajoutée.

Avec Apps Script, cette solution est rapide à mettre en place et parfaitement intégrée à votre environnement Gmail.

Étape 1 : Préparer le script

Voici le code pour automatiser le transfert des fichiers PDF. Il recherche les e-mails provenant d’un expéditeur spécifique, extrait les fichiers PDF, et les transfère à une autre adresse.

function transfererPiecesJointes() {
  // Définir l'expéditeur et le destinataire
  const expéditeur = "expediteur@example.com"; // Adresse e-mail de l'expéditeur
  const destinataire = "destinataire@example.com"; // Adresse e-mail du destinataire
  
  // Rechercher les e-mails non lus de l'expéditeur défini contenant une pièce jointe
  const threads = GmailApp.search(`from:${expediteur} is:unread has:attachment`);
  
  threads.forEach(thread => {
    const messages = thread.getMessages();
    
    messages.forEach(message => {
      const attachments = message.getAttachments();

      // Filtrer les pièces jointes PDF
      const pdfAttachments = attachments.filter(attachment => attachment.getContentType() === "application/pdf");
      
      // Si des PDF sont trouvés, les transférer
      if (pdfAttachments.length > 0) {
        const subject = `Transfert de pièces jointes: ${message.getSubject()}`;
        const body = `Bonjour,\n\nVeuillez trouver ci-joint les pièces jointes reçues de ${expéditeur}.\n\nCordialement,\n\nVotre script Gmail.`;

        GmailApp.sendEmail(destinataire, subject, body, {
          attachments: pdfAttachments
        });

        // Marquer le message comme lu pour éviter les doublons
        message.markRead();
      }
    });
  });
}

Étape 2 : Installer et configurer le script

1. Accéder à Google Apps Script

Depuis votre compte Gmail, accédez à Google Apps Script.

2. Créer un nouveau projet

  • Cliquez sur Nouveau projet.
  • Collez le code dans l’éditeur.

3. Personnaliser les variables

  • Remplacez expediteur@example.com par l’adresse e-mail de l’expéditeur.
  • Remplacez destinataire@example.com par l’adresse e-mail du destinataire.

4. Sauvegarder et exécuter

  • Sauvegardez le projet sous un nom explicite, par exemple “Transfert automatique PDF”.
  • Exécutez la fonction transfererPiecesJointes.

5. Autoriser les permissions

Lors de la première exécution, une fenêtre s’ouvrira pour vous demander d’autoriser l’accès à votre Gmail.

Étape 3 : Planification automatique (optionnelle)

Pour une exécution régulière, vous pouvez planifier le script :

  1. Cliquez sur l’icône de l’horloge dans Google Apps Script.
  2. Ajoutez un déclencheur pour exécuter le script (par exemple, toutes les heures ou tous les jours).

Avec ce script, vous bénéficiez d’un assistant automatisé qui traite les pièces jointes PDF pour vous. Cette solution s’adapte parfaitement aux besoins des professionnels qui manipulent de nombreux fichiers. Si vous souhaitez aller plus loin, vous pouvez personnaliser le script pour gérer plusieurs expéditeurs, trier les fichiers en fonction de critères spécifiques, ou encore les sauvegarder dans Google Drive.