Google Apps Script et Google Drive : fonctions pour gérer les dossiers et les fichiers de Drive – série de scripts 1
Les scripts – série 1 Pour tout savoir comment mettre en place ces scripts, lire l’article suivant. Numeriblog décline toute responsabilité en cas de dommage subit suite à une mauvaise utilisation d’un de ces scripts. […]

Ce que vous allez découvrir
- Les scripts - série 1
Google Apps Script et Google Drive : fonctions pour gérer les dossiers et les fichiers de Drive – série de scripts 1
Les scripts – série 1
Pour tout savoir comment mettre en place ces scripts, lire l’article suivant.
Numeriblog décline toute responsabilité en cas de dommage subit suite à une mauvaise utilisation d’un de ces scripts.
1. Liste des fichiers de votre Drive
function listeFichiers(){ // Enregistre le nom de chaque fichier dans le journal de l'utilisateur. var files = DriveApp.getFiles(); while (files.hasNext()) { var file = files.next(); Logger.log("Nom de fichier: " + file.getName()); } }
Afficher le journal pour voir la liste (CTRL+ENTREE)
2. Liste des fichiers présents dans un dossier
function fichiersDansDossier(){ //liste des fichiers du dossier "Sauvegarde" listé dans le journal de l'utilisateur var folderName = "SHEETS / DOCS" ; var folder = DriveApp.getFoldersByName(folderName); var files = folder.next().getFiles(); while (files.hasNext()) { var file = files.next(); Logger.log(file.getName()); } }
3. Liste des fichiers modifiés depuis une certaine date et contenant un mot donné.
function listeFichiersDateMot(){ // Liste des fichiers dans le journal de l'utilisateur qui a été modifié après le 28 février 2019 dont le nom contient "MDP". var files = DriveApp.searchFiles("modifiedDate > '2019-02-28' and title contains 'MDP'"); while (files.hasNext()) { var file = files.next(); Logger.log(file.getName()); } }
4. Liste des dossiers.
function listeDossiers(){ // Enregistre le nom de chaque dossier dans le journal de l'utilisateur. var dossiers = DriveApp.getFolders (); while (dossiers.hasNext()) { var dossier = dossiers.next (); Logger.log (dossier.getName ()); } }
5. Liste les dossiers dont vous êtes propriétaire
function mesDossiers(){ //liste des dossiers dont vous êtes propriétaire dans le journal var folders = DriveApp.searchFolders('"moi" in owners'); while (folders.hasNext()) { var folder = folders.next(); Logger.log(folder.getName()); } }
6. Liste des dossiers enfants d’un dossier
function dossiersDansDossier(){ //liste des dossiers dans le dossier "Sauvegarde" dans le journal de l'utilisateur var currentClient = "Sauvegarde" var Folder = DriveApp.getFoldersByName(currentClient); var folders = Folder.next().getFolders(); while (folders.hasNext()) { var folder = folders.next(); Logger.log("Nom des Dossiers dans "+ currentClient + " : " + folder.getName()); } }
7. Liste des dossiers que vous possédez et qui sont suivis
function listeMesDossiersSuivis(){ // Enregistre le nom de chaque dossier dans le journal de l'utilisateur que vous possédez et qui est suivi. var folders = DriveApp.searchFolders("'moi' in owners"); while (folders.hasNext()) { var folder = folders.next(); Logger.log(folder.getName()); } }
8. Supprimer un fichier selon son nom (Attention, ce script place des fichiers dans le corbeille)
function supprimerFichierParNom(){ // var files = DriveApp.getFiles(); var fileName = "Fichier de test"; // Remplacer par le nom du fichier while(files.hasNext()){ var file = files.next(); if(file.getName() === "Fichier de test") { DriveApp.removeFile(file); break; } } }
9. Supprimer les feuilles de calcul sans titre qui n’ont pas été mises à jour depuis une semaine (Attention, ce script place des fichiers dans la corbeille)
function suprimerSheetsVides(){ // Met à la corbeille toutes les feuilles de calcul sans titre qui n'ont pas été mises à jour depuis une semaine var files = DriveApp.getFilesByName("Feuille de calcul sans titre"); while (files.hasNext()) { var file = files.next(); if (new Date() - file.getLastUpdated() > 7 * 24 * 60 * 60 * 1000) { file.setTrashed(true); } } }
10. Créer un dossier s’il n’existe pas
function creerDossier() { // crée un nouveau dossier si celui-ci n'existe pas var folderName= "masauvegarde" ; var folder =DriveApp.getFoldersByName(folderName); if(folder.hasNext()) { Logger.log("Le dossier existe déjà") } else { var folder = DriveApp.createFolder(folderName); Logger.log("Un Nouveau dossier a été créé!"); } }
11. Créer une feuille de calcul dans un dossier particulier
function creerSheet(){ //créer une feuille de calcul dans un dossier particulier folder = DriveApp.getFolderById(" ID#######Dossier####### ") ; //ID du dossier var ss = SpreadsheetApp.create("fichier") ; //nom du fichier var temp = DriveApp.getFileById(ss.getId()); folder.addFile(temp) ; DriveApp.getRootFolder().removeFile(temp) }
12. Renommer un dossier
function renommeDossier(){ // Remplace le nom du dossier "Nom" par "Nouveau Nom" var folders = DriveApp.getFoldersByName("sauvegarde"); while (folders.hasNext()) { var folder = folders.next(); folder.setName("Nouveau Nom"); // Modifier le nom comme souhaité } }
13. Créer un fichier texte avec le contenu « Bonjour tout le monde! »
function creationfichiertxt() { // Créez un fichier texte avec le contenu "Bonjour tout le monde!" DriveApp.createFile( 'Nouveau fichier texte' , 'Bonjour, monde!' ); }
Exercice : Créer un document contenant la liste des fichiers compris dans un dossier.
14. Créer une image d’une carte routière dans le dossier racine :
function creationfichierimage1() { // Créer un fichier image dans Google Drive à l'aide du service Maps. var blob = Maps.newStaticMap().setCenter('4 Avenue des Champs-Élysées, Paris').getBlob(); DriveApp.getRootFolder().createFile(blob); }
Ces premiers scripts vous ont permis de tester les possibilités d’actions automatiques sur Drive. A vous d’imaginer des exploitations possibles, en fonction de vos besoins.
Laissez-nous un commentaire pour nous donner vos cas d’usage.
Besoin d'un peu plus d'aide sur Google Drive ?
Des formateurs sont disponibles toute l'année pour vous accompagner et optimiser votre utilisation de Google Drive, que ce soit pour votre entreprise ou pour vos besoins personnels !
Découvrir nos formations Google Drive- Tutos connexes
- Plus de l'auteur
5
Note du cours
(1)
(0)
(0)
(0)
(0)
Merci Gilbert ,plein de renseignements utiles,c’est vrai les possibilités sont énormes !
Cet avis vous a été utile ?
Excellent. Merci.
Cet avis vous a été utile ?
Cher Gilbert,
C’est vraiment TOP, clair, concis et accessible au béotien que je suis !
Bravo ! 🙂
Rares sont les tutoriels qui vont a l’essentiel !
Je suis grand utilisateur de GDrive, est-il possible de créer un script qui arrêterai le partage de dossier après une durée précise (2 heures par exemple)?
Merci
Bien à vous
Cet avis vous a été utile ?
Bonjour à tous,
Sauriez-vous si il est possible de récupérer la liste des drives partagés ainsi que la liste des membres et leur accés via app script?
Merci d’avance.
Vincent
Cet avis vous a été utile ?
Super article, merci
Dans le script 8. Supprimer un fichier selon son nom (Attention, ce script place des fichiers dans le corbeille), à la place de
if(file.getName() === « Fichier de test »)
ce n’est pas plutôt :
if(file.getName() === fileName)
Bonne journée
Cet avis vous a été utile ?
comment déplacer un fichier d’un dossier à un autre pour l’archiver quand on finit les actions à mener .
Cet avis vous a été utile ?
merci beaucoup pour le tuto et pour tes scripts
Je me permet directerment via ce commentaire de te demander ceci:
J’ai une liste de noms dans la colonne A d’un google sheet et j’aimerai creer un dossier par nom dans un dossier de mon google drive
j’ai bien vu le script concernant la creation d’un dossier
Par contre je ne sais pas comment lire la valeur d’une cellule et puis passer faire boucle pour passer a la prochaine
Merci beaucoup
Cet avis vous a été utile ?
Bonjour,
Vos exemples sont très intéressants mais même si je débute , je souhaite les adapter.
Pouvez-vous m’éclairer sur :
1° Je veux lister les fichiers commençant par TOTO2022
2° Obtenir la liste de ces fichiers non pas sur la console, mais dans un Google Sheet.
3° Peut-on passer des paramètres pour rendre les fonctions génériques.
Cet avis vous a été utile ?
Bonjour Merci pour ces informations preciseuses.Est il possible de créer une interface pour y déposer des documents qui seront directement enregistrer sous un drive défini?
Cet avis vous a été utile ?