Ce billet est la suite logique de l’article de 2014 Générer automatiquement des dossiers sur un lecteur avec Excel qui abordait une méthode permettant de générer automatiquement des sous-dossiers stockés dans un dossier principal.
Mon besoin à cet époque était de créer des dossiers individuels aux noms d’étudiants (un grosse centaine) à partir d’une liste de noms.
Nous sommes en environnement Windows mais cette fois avec OpenOffice Calc (ça marche aussi avec LibreOffice), et le dossier sera généré sur un lecteur réseau ou une clé USB ou un disque interne. Cette macro Calc publiée dans ce forum en 2008 demeure d’actualité.
Comment procéder :
Créer un nouveau document Calc et dans Outil/Options, abaisser à Moyen la sécurité des macros.
Dans l’éditeur de macros :
Puis dans le nom correspond au dossier, puis Module1
La macro à copier-coller :
Option Explicit Sub CreerDosssier () Dim monDocu As Object, lesFeuils As Object Dim maFeuil As object Dim maCell As Object Dim x As long, z As String Dim Chemin as String monDocu = ThisComponent lesFeuils = monDocu.Sheets maFeuil = lesFeuils.getByName("Feuille1") x = 1 maCell = maFeuil.getCellRangeByName("A"& x) z = maCell.String Do Until z = "" Chemin = MkDir (ConvertToUrl ("E:\TEST\"&z)) x = x + 1 maCell = maFeuil.getCellRangeByName("A"& x) z = maCell.String Loop End Sub
Paramètres à modifier :
– le nom de la feuille si vous avez renommé Feuille1
– le lecteur et le nom du dossier “E:\TEST\
Pour lancer la macro :
Outil/Macros/Exécuter la macro puis sélectionner la macro dans la liste et Exécuter :
Pour automatiser l’exécution, on peut créer une nouvelle barre d’outil avec un bouton assigné à la macro :
Bouton avec une icône de circonstance :
Prochaine étape, vous proposer une version de la macro sous Linux, petits veinards…