Avis d'expert sur code VBA

eljojo_e Messages postés 1155 Date d'inscription   Statut Membre Dernière intervention   -  
castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai trouvé un bout de code qui permet de lister dossier + sous dossier etc... d'un répertoire.

J'ai rajouté une partie qui permet de lister les fichiers présents. (sur un excel pour le moment)

Le code fonctionne mais la liste est complétement désordonné.

J'aurais aimé que ca liste tout dans l'ordre alphabétique sans filtrer par la suite. (J'aimerais appliquer ça à un treeview sur access qui n'est pas triable)

Merci d'avance !


Sub TousLesDossiers(LeDossier$, Idx As Long)
Dim strDossier As String
Dim strFichier As String
Dim FSO As Object, Dossier As Object
Dim sousRep As Object, Flder As Object
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Dossier = FSO.GetFolder(LeDossier)

'examen du dossier courant
For Each Flder In Dossier.SubFolders
Idx = Idx + 1
Cells(Idx, 1).Value = Flder.Path & "\"
'Rajou de fichier #début
' Lister tous les fichiers du dossier
strFichier = Dir(Flder.Path & "\", vbNormal)
While strFichier <> ""
' Afficher le nom du fichier
Idx = Idx + 1
Cells(Idx, 1).Value = Flder.Path & "\" & strFichier
'Lire le fichier suivant
strFichier = Dir
Wend
'rajout de fichier #fin
Next
'traitement récursif des sous dossiers
For Each sousRep In Dossier.SubFolders
TousLesDossiers sousRep.Path, Idx
Next sousRep
Set FSO = Nothing
End Sub

Et son lanceur

Sub Tout_Lister()
TousLesDossiers "Y:\TRAVAUX\2015 test", 0
End Sub

A voir également:

1 réponse

castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
 
Bonjour
Pose ta question sur forum programmation VBA
0