Comment inclure les sous-dossier dans la recherche depuis un répertoire (VBA)
2 réponses
Emile63
Bonjour =E0 tous,
La proc=E9dure ci-dessous, (r=E9duite pour l'occasion) explore tous les
fichiers contenus dans un r=E9pertoire indiqu=E9: Chemin
Mon probl=E8me c'est que souvent le r=E9pertoire d=E9sign=E9 contient une
importante
quantit=E9 de sous-r=E9pertoires, et je souhaiterais que l'indication du
chemin
que je pointe, permette d'analiser =E9galement les sous-dossiers de ce
r=E9pertoire.
Est-ce que quelqu'un pourrait me mettre sur la voie?
Je vous remercie d'avance pour vos commentaires,
cordialement,
Emile
---------------------------------------------------------------------------=
-----
Sub Liste_Fichiers_Avec_Macro()
Dim Chemin As String
Chemin =3D ChoixDossier()
Set FS =3D CreateObject("Scripting.FileSystemObject")
If Chemin =3D "" Then End
Set F =3D FS.getFolder(Chemin)
End Sub
Function ChoixDossier()
Dim MonR=E9pertoire As String
MonR=E9pertoire =3D "\\serveur\Emile\"
If Val(Application.Version) >=3D 10 Then
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName =3D MonR=E9pertoire
.Show
If .SelectedItems.Count > 0 Then
ChoixDossier =3D .SelectedItems(1)
Else
ChoixDossier =3D ""
End If
End With
Else
ChoixDossier =3D InputBox("=BFDepuis quel r=E9pertoire?")
End If
End Function
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
DanielCo
Bonjour. Voici un exemple; il liste les fichiers du dossier principal et de tous les sous-dossiers. Tu peux le modifier pour répondre à tes besoins :
Dim Ctr As Long ' à mettre en tête d'un module standard
Sub SousDossiers() Dim FSO As Object, Dossier As Object Const DossierPrincipal As String = "d:donneesdaniel" Application.ScreenUpdating = False Sheets.Add Set FSO = CreateObject("scripting.filesystemobject") Set Dossier = FSO.getfolder(DossierPrincipal) lectureSousDossiers Dossier Application.ScreenUpdating = False End Sub
Sub lectureSousDossiers(Dossier) For Each f In Dossier.Files Ctr = Ctr + 1 Cells(Ctr, 1) = f.Path Next f For Each d In Dossier.subfolders lectureSousDossiers d Next d End Sub
Daniel
Bonjour à tous, La procédure ci-dessous, (réduite pour l'occasion) explore tous les fichiers contenus dans un répertoire indiqué: Chemin Mon problème c'est que souvent le répertoire désigné contient une importante quantité de sous-répertoires, et je souhaiterais que l'indication du chemin que je pointe, permette d'analiser également les sous-dossiers de ce répertoire. Est-ce que quelqu'un pourrait me mettre sur la voie?
Je vous remercie d'avance pour vos commentaires, cordialement, Emile -------------------------------------------------------------------------------- Sub Liste_Fichiers_Avec_Macro() Dim Chemin As String Chemin = ChoixDossier() Set FS = CreateObject("Scripting.FileSystemObject") If Chemin = "" Then End Set F = FS.getFolder(Chemin) End Sub
Function ChoixDossier() Dim MonRépertoire As String MonRépertoire = "serveurEmile" If Val(Application.Version) >= 10 Then With Application.FileDialog(msoFileDialogFolderPicker) .InitialFileName = MonRépertoire .Show If .SelectedItems.Count > 0 Then ChoixDossier = .SelectedItems(1) Else ChoixDossier = "" End If End With Else ChoixDossier = InputBox("¿Depuis quel répertoire?") End If End Function
Bonjour.
Voici un exemple; il liste les fichiers du dossier principal et de tous
les sous-dossiers. Tu peux le modifier pour répondre à tes besoins :
Dim Ctr As Long ' à mettre en tête d'un module standard
Sub SousDossiers()
Dim FSO As Object, Dossier As Object
Const DossierPrincipal As String = "d:donneesdaniel"
Application.ScreenUpdating = False
Sheets.Add
Set FSO = CreateObject("scripting.filesystemobject")
Set Dossier = FSO.getfolder(DossierPrincipal)
lectureSousDossiers Dossier
Application.ScreenUpdating = False
End Sub
Sub lectureSousDossiers(Dossier)
For Each f In Dossier.Files
Ctr = Ctr + 1
Cells(Ctr, 1) = f.Path
Next f
For Each d In Dossier.subfolders
lectureSousDossiers d
Next d
End Sub
Daniel
Bonjour à tous,
La procédure ci-dessous, (réduite pour l'occasion) explore tous les
fichiers contenus dans un répertoire indiqué: Chemin
Mon problème c'est que souvent le répertoire désigné contient une
importante
quantité de sous-répertoires, et je souhaiterais que l'indication du
chemin
que je pointe, permette d'analiser également les sous-dossiers de ce
répertoire.
Est-ce que quelqu'un pourrait me mettre sur la voie?
Je vous remercie d'avance pour vos commentaires,
cordialement,
Emile
--------------------------------------------------------------------------------
Sub Liste_Fichiers_Avec_Macro()
Dim Chemin As String
Chemin = ChoixDossier()
Set FS = CreateObject("Scripting.FileSystemObject")
If Chemin = "" Then End
Set F = FS.getFolder(Chemin)
End Sub
Function ChoixDossier()
Dim MonRépertoire As String
MonRépertoire = "\serveurEmile"
If Val(Application.Version) >= 10 Then
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = MonRépertoire
.Show
If .SelectedItems.Count > 0 Then
ChoixDossier = .SelectedItems(1)
Else
ChoixDossier = ""
End If
End With
Else
ChoixDossier = InputBox("¿Depuis quel répertoire?")
End If
End Function
Bonjour. Voici un exemple; il liste les fichiers du dossier principal et de tous les sous-dossiers. Tu peux le modifier pour répondre à tes besoins :
Dim Ctr As Long ' à mettre en tête d'un module standard
Sub SousDossiers() Dim FSO As Object, Dossier As Object Const DossierPrincipal As String = "d:donneesdaniel" Application.ScreenUpdating = False Sheets.Add Set FSO = CreateObject("scripting.filesystemobject") Set Dossier = FSO.getfolder(DossierPrincipal) lectureSousDossiers Dossier Application.ScreenUpdating = False End Sub
Sub lectureSousDossiers(Dossier) For Each f In Dossier.Files Ctr = Ctr + 1 Cells(Ctr, 1) = f.Path Next f For Each d In Dossier.subfolders lectureSousDossiers d Next d End Sub
Daniel
Bonjour à tous, La procédure ci-dessous, (réduite pour l'occasion) explore tous les fichiers contenus dans un répertoire indiqué: Chemin Mon problème c'est que souvent le répertoire désigné contient une importante quantité de sous-répertoires, et je souhaiterais que l'indication du chemin que je pointe, permette d'analiser également les sous-dossiers de ce répertoire. Est-ce que quelqu'un pourrait me mettre sur la voie?
Je vous remercie d'avance pour vos commentaires, cordialement, Emile -------------------------------------------------------------------------------- Sub Liste_Fichiers_Avec_Macro() Dim Chemin As String Chemin = ChoixDossier() Set FS = CreateObject("Scripting.FileSystemObject") If Chemin = "" Then End Set F = FS.getFolder(Chemin) End Sub
Function ChoixDossier() Dim MonRépertoire As String MonRépertoire = "serveurEmile" If Val(Application.Version) >= 10 Then With Application.FileDialog(msoFileDialogFolderPicker) .InitialFileName = MonRépertoire .Show If .SelectedItems.Count > 0 Then ChoixDossier = .SelectedItems(1) Else ChoixDossier = "" End If End With Else ChoixDossier = InputBox("¿Depuis quel répertoire?") End If End Function
Emile63
Bonjour Daniel, Merci por ton aide et solution. J'essaie de modifier/adapter a ma procédure, mais pour l'instant je n'y arrive pas.. Je persiste et te tiendrai au courant. ;-) Cordialement, Emile
Bonjour Daniel,
Merci por ton aide et solution.
J'essaie de modifier/adapter a ma procédure, mais pour l'instant je
n'y arrive pas..
Je persiste et te tiendrai au courant. ;-)
Cordialement,
Emile
Bonjour Daniel, Merci por ton aide et solution. J'essaie de modifier/adapter a ma procédure, mais pour l'instant je n'y arrive pas.. Je persiste et te tiendrai au courant. ;-) Cordialement, Emile