Utilisation de BrowseForFolder dans une macro de listage de

Bonjour,

Je souhaite réaliser une macro permettant de lister les fichiers contenus dans un dossier. Je ne cherche pas à lister les sous-dossiers. Pour cela je me sers de celle-ci, que j'ai trouvée sur Internet :

Sub Lister()

repertoire = "C:\Users\MH\Videos\Toto"

i = 2

nf = Dir(repertoire & "\*.*")

Do While nf <> ""

Cells(i, 1) = nf

nf = Dir '

i = i + 1

Loop

End Sub

Elle fonctionne.

Seulement je ne veux pas que le nom du dossier soit écrit en dur dans le code, je veux qu'il soit saisi par l'utilisateur à l'aide de la commande BrowseForFolder et je me sers de ce bot de code que j'ai trouvé sur Internet

Application.ScreenUpdating = False

Dim myPath As String, myFile As String

Dim objShell As Object, objFolder As Object, oFolderItem As Object

Dim Chemin As String

Set objShell = CreateObject("Shell.Application")

Set objFolder = objShell.BrowseForFolder(&H0&, "Choisir un répertoire", &H1&)

On Error Resume Next

Set oFolderItem = objFolder.Items.Item

Chemin = oFolderItem.Path

MsgBox Chemin

Je crée donc la macro :

Sub Lister()

Application.ScreenUpdating = False

Dim myPath As String, myFile As String

Dim objShell As Object, objFolder As Object, oFolderItem As Object

Dim Chemin As String

Set objShell = CreateObject("Shell.Application")

Set objFolder = objShell.BrowseForFolder(&H0&, "Choisir un répertoire", &H1&)

On Error Resume Next

Set oFolderItem = objFolder.Items.Item

repertoire = oFolderItem.Path

i = 2 'jusqu'ici c'est bon

nf = Dir(repertoire & "\*.*") 'ici ça foire car nf est vide

MsgBox (nf)

Do While nf <> ""

Cells(i, 1) = nf

nf = Dir '

i = i + 1

Loop

End Sub

E mettant des MsgBox à différents endroits, je me suis rendu compte que repertoire prenait la bpnne valeur mais que nf était vide dès la première occurrence et que donc le listage ne pouvait fonctionner.

Quelqu'un voit-il ce qui cloche ?

Merci et bon dimanche.

Bonjour,

ta macro fonctionne très bien. Je ne vois pas d'erreur. Es-tu sûr que le répertoire que tu as choisi contient bien des fichiers ?

Merci pour ta réponse Acide sulfurique.

Oui, tu as raison, j'ai dû me lourder quelque part...

Mille excuses pour le dérangement.

Rechercher des sujets similaires à "utilisation browseforfolder macro listage"