bonsoir à tous et à toutes,
J'aurais besoin de savoir comment me placer sur un répertoire Windows et lire les dossiers et sous dossiers pour connaitre leurs noms.
Si quelqu'un a une solution merçi de me répondre.
A +
bonsoir à tous et à toutes,
J'aurais besoin de savoir comment me placer sur un répertoire Windows et lire les dossiers et sous dossiers pour connaitre leurs noms.
Si quelqu'un a une solution merçi de me répondre.
A +
Salu, voir dans la FAQ http://ooo.developpez.com/faq/?page=Repertoire
bonsoir et merçi pour ta piste , j'ai trouvé cette fonction qui m'irait bien mais je souhaiterais connaitre le nom des sous dossiers et celle çi ne le fait pas si tu veux bien comment faire pour y remédier?
A +
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Sub listerRepertoires_V01 Dim Cible As String , Chemin As String Chemin ="C:\Documents and Settings\michel\dossier\general\" Cible =Dir(Chemin ,16) If Cible <> "" Then Do If Cible <>"." And Cible <>".." Then MsgBox Cible '".." et "." correspondent aux dossiers Parent et courant Cible =Dir Loop Until Cible ="" End If End Sub
Tiré et adapté de la FAQ http://excel.developpez.com/faq/inde...riptingRuntime
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 Sub TestListeFolderss() Dim Dossier As String 'Définit le répertoire pour débuter la recherche. Dossier = "C:\Users\user\Desktop" 'Appelle la procédure de recherche des fichiers Cells.ClearContents ListeRep Dossier 'Ajuste la largeur des colonnes A:E en fonction du contenu des cellules. Columns("A:B").AutoFit MsgBox "Terminé" End Sub 'Nécessite d'activer la référence "Microsoft Scripting RunTime" 'Dans l'éditeur de macros (Alt+F11): 'Menu Outils 'Références 'Cochez la ligne "Microsoft Scripting RunTime". 'Cliquez sur le bouton OK pour valider. Sub ListeRep(Repertoire As String) Dim Fso As Scripting.FileSystemObject Dim SourceFolder As Scripting.Folder Dim SubFolder As Scripting.Folder Dim i As Long Set Fso = CreateObject("Scripting.FileSystemObject") Set SourceFolder = Fso.GetFolder(Repertoire) 'Récupère le numéro de la dernière ligne vide dans la colonne A. i = Range("A65536").End(xlUp).Row + 1 'Inscrit le nom du repertoire dans la cellule Cells(i, 1) = SourceFolder.Name Cells(i, 2) = SourceFolder.Path '--- Appel récursif pour lister les fichier dans les sous-répertoires ---. For Each SubFolder In SourceFolder.subfolders ListeRep SubFolder.Path Next SubFolder Set Fso = Nothing Set SourceFolder = Nothing End Sub
Partager