Automatisation de la gestion des fichiers téléchargés via Google Forms

Dans cet article, nous allons explorer comment automatiser la gestion des fichiers téléchargés via Google Forms en utilisant Google Apps Script.

Cette automatisation permet de créer des dossiers uniques pour chaque soumission de formulaire et d’y déplacer les fichiers téléchargés, facilitant ainsi l’organisation et la gestion des fichiers.

Pourquoi automatiser la gestion des fichiers téléchargés ?

Lorsqu’un formulaire Google Forms est utilisé pour collecter des fichiers (par exemple, des CVs, des documents, des images, etc.), les fichiers téléchargés peuvent rapidement devenir difficiles à gérer, surtout si les soumissions sont nombreuses. Voici quelques avantages de l’automatisation de ce processus :

  1. Organisation : Chaque soumission de formulaire a son propre dossier, ce qui évite le mélange des fichiers.
  2. Gain de temps : Plus besoin de trier manuellement les fichiers après chaque soumission.
  3. Facilité d’accès : Les fichiers sont organisés de manière structurée, ce qui facilite leur recherche et leur consultation.
  4. Sécurité : Les fichiers sont automatiquement déplacés dans des dossiers spécifiques, réduisant le risque de perte ou de suppression accidentelle.

Comment implémenter ce script ?

Voici un guide étape par étape pour implémenter ce script Google Apps Script pour votre formulaire Google Forms.

Étape 1 : Créer un formulaire Google Forms

  1. Ouvrez Google Forms.
  2. Créez un nouveau formulaire ou utilisez un formulaire existant.
  3. Ajoutez une question de type « Téléchargement de fichier ».

Étape 2 : Configurer Google Apps Script

  1. Dans Google Forms, cliquez sur les trois points verticaux en haut à droite et sélectionnez « Éditeur de script ».
  2. Remplacez le contenu du fichier de script par le code suivant (en français) :
const ID_DOSSIER_PARENT = '<<ID du Dossier ici>>';

const initialiser = () => {
  const formulaire = FormApp.getActiveForm();
  ScriptApp.newTrigger('lorsDeLaSoumissionDuFormulaire').forForm(formulaire).onFormSubmit().create();
};

const lorsDeLaSoumissionDuFormulaire = ({ réponse } = {}) => {
  try {
    // Obtenir une liste de tous les fichiers téléchargés avec la réponse
    const fichiers = réponse
      .getItemResponses()
      // Nous nous intéressons uniquement aux questions de type Téléchargement de fichier
      .filter((réponseItem) => réponseItem.getItem().getType().toString() === 'FILE_UPLOAD')
      .map((réponseItem) => réponseItem.getResponse())
      // La réponse inclut les identifiants de fichier dans un tableau que nous pouvons aplatir
      .reduce((a, b) => [...a, ...b], []);

    if (fichiers.length > 0) {
      // Chaque réponse de formulaire a un identifiant unique
      const nomSousDossier = réponse.getId();
      const dossierParent = DriveApp.getFolderById(ID_DOSSIER_PARENT);
      const sousDossier = dossierParent.createFolder(nomSousDossier);
      fichiers.forEach((idFichier) => {
        // Déplacer chaque fichier dans le dossier personnalisé
        DriveApp.getFileById(idFichier).moveTo(sousDossier);
      });
    }
  } catch (e) {
    Logger.log(e);
  }
};

// Initialisation du déclencheur lors de la soumission du formulaire
initialiser();
  1. Remplacez <<ID du Dossier ici>> par l’identifiant du dossier parent dans Google Drive où vous souhaitez que les sous-dossiers soient créés.
  2. Sauvegardez le script avec un nom significatif, par exemple, « Gestion des fichiers du formulaire ».

Étape 3 : Autoriser les permissions

  • Lors de la sauvegarde, Google demande des autorisations pour exécuter le script. Acceptez les autorisations nécessaires pour permettre au script de manipuler les fichiers sur votre Google Drive et de gérer les soumissions du formulaire.

Étape 4 : Tester le script

  • Retournez à votre formulaire Google Forms et faites une soumission de test avec un fichier téléversé.
  • Vérifiez votre Google Drive pour voir si un nouveau dossier a été créé avec l’identifiant unique de la soumission, contenant le fichier téléversé.

Automatiser la gestion des fichiers téléchargés via Google Forms avec Google Apps Script est une solution efficace pour maintenir l’organisation et la structure de vos fichiers. En suivant ce guide, vous pouvez facilement implémenter cette automatisation et ainsi gagner du temps et améliorer l’efficacité de votre processus de collecte de fichiers.

N’hésitez pas à partager vos expériences ou à poser des questions dans les commentaires ci-dessous. Bon codage !