XL 2013 Lister les fichier d'un dossier et de tous les sous dossiers du dossier "parent"

  • Initiateur de la discussion Initiateur de la discussion Florian53
  • 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 !

Florian53

XLDnaute Impliqué
Bonjour à tous,

Je souhaiterais pouvoir via un fichier excel lister tous les fichiers qui ce trouve dans un dossier ainsi que les fichiers qui se trouve dans les sous dossiers du dossier "parent".

J'ai trouvé ce lien sur le net : https://vbaforexcel.wordpress.com/2013/09/06/lister-les-fichiers-et-sous-dossiers-dun-dossier/ qui explique très bien comment faire.

J'ai réussi à le faire fonctionner à mon utilisation par contre il liste que les fichiers du dossier mais pas ceux des sous dossiers.

je pense qu'il faut partir de ce code :

Code:
Sub Fichiers()
Application.ScreenUpdating = False
Dim myPath As String, myFile As String

myPath = ThisWorkbook.Path
myFile = Dir(myPath & "\*.xls*")

c = 1
Do While myFile <> ""
    Cells(c, 1) = myFile
    myFile = Dir()
    c = c + 1
Loop

End Sub

Pouvez vous m'éclairer svp.

Cordialement
 
Re : Lister les fichier d'un dossier et de tous les sous dossiers du dossier "parent"

autant pour moi c'est ma constante qui m’embête

Sub ListeFichiersRepert()
Dim Fso As Object
Dim MonRepertoire As String, f As Object, x As Integer
Dim f1 As Object, f2 As Object
Set Fso = CreateObject("Scripting.FileSystemObject")
MonRepertoire = "G:\sourcing qualité\SAV\Analyse SAV"
x = 1
For Each f In Fso.GetFolder(MonRepertoire).Files
If f.Name Like "*.xls*" Then
Cells(x, 1).Value = f.Name
x = x + 1
End If
Next f
x = 1
For Each f1 In Fso.GetFolder(MonRepertoire).SubFolders
Cells(x, 2).Value = f1.Name
x = x + 1
For Each f2 In f1.Files
If f2.Name Like "*.xls*" Then
Cells(x - 1, 3).Value = f2.Name
x = x + 1
End If
Next f2
x = x - 1
Next f1
End Sub

sa fonctionne très bien comme ceci par contre sa s'arrete au premier sous dossiers mais si je dispose encore de sous dossiers dans le 1er niveau des sous dossiers sa va devenir une usine à gaz ?
 
Re : Lister les fichier d'un dossier et de tous les sous dossiers du dossier "parent"

Re,

essaye ceci :
Code:
Option Explicit
 Sub ListeFichiersRepert()
 Dim Fso  As Object
 Dim MonRepertoire As String, f As Object, x As Integer
 Dim f1 As Object, f2 As Object
 Set Fso = CreateObject("Scripting.FileSystemObject")
 MonRepertoire = "G:\sourcing qualité\SAV\Analyse SAV"
 x = 1
 For Each f1 In Fso.GetFolder(MonRepertoire).SubFolders
     Cells(x, 1).Value = f1.Name
     x = x + 1
     For Each f2 In f1.Files
     If f2.Name Like "Constante*.xls*" Then
         Cells(x - 1, 2).Value = f2.Name
         x = x + 1
         End If
     Next f2
     x = x - 1
 Next f1
 End Sub
 
Re : Lister les fichier d'un dossier et de tous les sous dossiers du dossier "parent"

sa fonctionne mais pas pour sous dossiers des sous dossiers et etc .......

En fait ce que je voudrais c'est à partir de la racine "G:\sourcing qualité\SAV\Analyse SAV"

Il me liste toutes les fichiers xls ou xlsm qui commence par "Analyse SAV" des dossiers sous dossiers, des sous sous dossiers je voudrais qu'il aille au bout pas qu'il s’arrête au 1er niveau.
 
Re : Lister les fichier d'un dossier et de tous les sous dossiers du dossier "parent"

Re,

En fait ce que je voudrais c'est à partir de la racine "G:\sourcing qualité\SAV\Analyse SAV"

Il me liste toutes les fichiers xls ou xlsm qui commence par "Analyse SAV" des dossiers sous dossiers, des sous sous dossiers je voudrais qu'il aille au bout pas qu'il s’arrête au 1er niveau.
regarde le code de Michel, il me sembe que c'est ce qu'il fait.....
 
Re : Lister les fichier d'un dossier et de tous les sous dossiers du dossier "parent"

oui il fonctionne bien mais comme je disais dans le post #6 si il y a 2 resultat vrais dans le même dossier il les à la suite ( ex: C10,D10) et oi je voudrais qu'il les uns en dessous des autres
 
Re : Lister les fichier d'un dossier et de tous les sous dossiers du dossier "parent"

Re,

il faut gérer différemment cette partie du code sans doute

Code:
c = 2
 Do While myFile <> ""
     'Cells(c, 1) = myFile
    Cells(ActiveCell.Row, c) = myFile
     myFile = Dir()
     c = c + 1
 Loop
 
Re : Lister les fichier d'un dossier et de tous les sous dossiers du dossier "parent"

Bonsoir tout le monde,

@Florian, suite à ton message privé !
voir si ok selon tes demandes !?

EDIT:
j'avais oublié d'enlever l'appel de la macro qui créé les menus personnalisés !
 

Pièces jointes

Dernière édition:
Re : Lister les fichier d'un dossier et de tous les sous dossiers du dossier "parent"

Merci Roland c'est tout à fais ce que je voulais et merci à MJ13 ainsi qu'à Pierrot de m'avoir aider aussi.

Est ce que c'est possible d'inclure plusieurs chemins dans " RepSaisie$ " ?
 
Re : Lister les fichier d'un dossier et de tous les sous dossiers du dossier "parent"

Bonjour.
Juste une observation à propos du dernier module de Roland_M.
Dommage d'avoir laissé partout Object au lieu des types explicites de la bibliothèque Scripting: FileSystemObject, Folder et File !
Il s'en suit que la référence Microsoft Scripting Runtime ne sert presque à rien puisqu'elle n'évite quand même pas les liaisons tardives…
Mais pas grave, du moment que ça marche quasiment aussi bien.
 
Dernière édition:
- 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

Discussions similaires

Réponses
3
Affichages
1 K
Retour