Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Lister tous les répertoires dans une feuille..

2 réponses
Avatar
OlivierP
Bonjour,
J'aimerais savoir s'il est possible de lister tous les répertoires d'un CD
dans une feuille. La hierarchie n'a pas besoin d'être conservée (par
exemple, s'il y a un répertoire se nommant a dans un répertoire se nommant
b, a n'a pas besoin d'être distingué de quelque manière dans excel).

Merci à tous,
Olivier

2 réponses

Avatar
Daniel
Bonsoir.
Voila une bidouille qui devrait te dépanner à condition que tes noms de
dossiers et de fichiers ne comportent pas trop d'espaces. Il te reste à
mettre en forme les informations. Dans l'exemple qui suit, le lecteur CD
s'appelle "D:" et la liste est d'abord créée dans un fichier texte :
"E:Danieltoto.txt". Ce fichier est ensuite ouvert dans XL.

Sub test()
ret = Shell("cmd /C dir /s D: > E:Danieltoto.txt")
Workbooks.OpenText Filename:="E:Danieltoto.txt", Origin:= _
xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True,
Semicolon:úlse, _
Comma:úlse, Space:=True, Other:úlse, FieldInfo:=Array(Array(1,
1), _
Array(2, 1), Array(3, 1), Array(4, 1)), TrailingMinusNumbers:=True
End Sub

Bon courage.
Daniel

"OlivierP" a écrit dans le message de news:

Bonjour,
J'aimerais savoir s'il est possible de lister tous les répertoires d'un CD
dans une feuille. La hierarchie n'a pas besoin d'être conservée (par
exemple, s'il y a un répertoire se nommant a dans un répertoire se nommant
b, a n'a pas besoin d'être distingué de quelque manière dans excel).

Merci à tous,
Olivier



Avatar
michdenis
Bonsoir OlivierP,


Proposé par Dave Peterson sur le forum anglophone ...


'Déclaration des variables dans le haut d'un module standard

Option Explicit
Dim myRow As Long
Dim wks As Worksheet


Sub FoldersList()
Set wks = Worksheets.Add
myRow = 0

'Sélectionne ton répertoire ici :
Call FoldersInFolder("C:Music")
End Sub


Sub FoldersInFolder(myFolderName As String)

Dim FSO As Object
Dim myBaseFolder As Object
Dim myFolder As Object
Set FSO = CreateObject("scripting.filesystemobject")

Set myBaseFolder = FSO.GetFolder(myFolderName)

For Each myFolder In myBaseFolder.SubFolders
myRow = myRow + 1
wks.Cells(myRow, "A").Value = myFolder.Path
Call FoldersInFolder(myFolder.Path)
Next myFolder

End Sub


Salutations!



"OlivierP" a écrit dans le message de news:
Bonjour,
J'aimerais savoir s'il est possible de lister tous les répertoires d'un CD
dans une feuille. La hierarchie n'a pas besoin d'être conservée (par
exemple, s'il y a un répertoire se nommant a dans un répertoire se nommant
b, a n'a pas besoin d'être distingué de quelque manière dans excel).

Merci à tous,
Olivier