Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Afficher le contrenu d'un repertoire

  • Initiateur de la discussion Initiateur de la discussion Horzadi
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

H

Horzadi

Guest
Mon probleme est plutot simple :

J'ai un repertoire avec un bon paquet de sous repertoire (environ 1000) et dans chaque repertoire des fichiers pdf.

Ce n'est pas moi qui genere les fichier pdf mais je dois verifier que tout est genéré, l'idée c'est de faire un fichier Excel qui me liste ce qu'il y a dans chaque sous repertoire de maniere claire et imprimable pour pouvoir pister les manquant sans rentrer dans chaque repertoire un par un.

Sachant que j'ai un listing exaustif avec quelle personne doit faire quoi a comparer avec ce qu'il y a dans le repertoire.

Je n'arrive pas a trouver quelque chose de simple à mettre en place, une idée ?

Merci d'avance.

Horzadi
 
Bonjour:
Voila un code qui va te permettre d'avancer, il liste tous les fichiers de tous les sousrépertoires de la racine c:

Bien sur bien amenagé, tu devrais t'en sortir.

Bonne chance

Dim compterep
Dim comptefich



Sub listerep()
rep = Dir("c:/", 16)
While rep <> ""
If InStr(1, rep, ".") = 0 Then repertoire (rep)
rep = Dir
Wend

For nrep = 1 To compterep
MsgBox ActiveSheet.Range("a1").Offset(0, nrep)
fich = Dir("c:/" & ActiveSheet.Range("a1").Offset(0, nrep) & "/", 0)
While fich <> ""
ActiveSheet.Range("a1").Offset(comptefich + 1, nrep) = fich
comptefich = comptefich + 1
fich = Dir
Wend
comptefich = 0
Next
End Sub

Sub repertoire(rep)
compterep = compterep + 1
ActiveSheet.Range("a1").Offset(0, compterep) = rep
End Sub
 
Bonjour

voir aide vba:

Execute, méthode (objets FileSearch et FileFind) - Exemple

Set fs = Application.FileSearch
With fs
.LookIn = "C:\Mes documents"
'<<ajouter ici la recherche dans les sous-répertoires écrite plus bas>>
.FileName = "cmd*"
If .Execute(SortBy:=msoSortbyFileName, _
SortOrder:=msoSortOrderAscending) > 0 Then
MsgBox .FoundFiles.Count & _
" fichier(s) trouvé(s)."
For i = 1 To .FoundFiles.Count
MsgBox .FoundFiles(i)
Next i
Else
MsgBox "Aucun fichier n'a été trouvé."
End If
End With

C'est à mon avis un etrès bonne piste pour récupérer les noms de fichier
Il faut en plus scruter tous les sous-répertoires donc intercaler la ligne ci-dessous là où j'ai mis '<<ajouter...........>>

.SearchSubFolders = True

Eric
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…