Recherche de répertoires

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

M

Mlh

Guest
Bonjours à tous...
J'essai de rechercher, avec une macro, tous les répertoires présents dans le répertoire où se trouve ma feuille Excel
Je connais filesearch pour les fichiers, mais je n'arrive pas à faire l'équivalent avec des répertoires...
Merci d'avance pour votre aide... 🙂
 
bonjour


je pense qu'il y a peut-être un paramètre qui permet de spécifier le type de fichier, et ainsi de spécifier que le recherche des répertoires

si ce n'est pas le cas, quand ta boucle lit un fichier, utilise la fonction getattr pour savoir si c'est un répertoire ou encore contrôle le résultat de l'expression dir(tonchemin,vbdirectory)<>""

bye
stephane
 
MyFile = Dir("C:\WINDOWS\*.INI")
' Appelle de nouveau Dir sans argument pour renvoyer le
' fichier *.INI suivant dans le même dossier.
MyFile = Dir
voici un exemple :
' Affiche les noms dans C:\ représentant des dossiers.
MyPath = "c:\" ' Définit le chemin d'accès.
MyName = Dir(MyPath, vbDirectory) ' Extrait la première entrée.
Do While MyName <> "" ' Commence la boucle.
' Ignore le dossier courant et le dossier
' contenant le dossier courant.
If MyName <> "." And MyName <> ".." Then
' Utilise une comparaison au niveau du bit pour
' vérifier que MyName est un dossier.
If (GetAttr(MyPath & MyName) _
And vbDirectory) = vbDirectory Then
Debug.Print MyName ' Affiche l'entrée uniquement si elle
End If ' représente un dossier.
End If
MyName = Dir ' Extrait l'entrée suivante.
Loop

Catherine
 
voici un exemple :
' Affiche les noms dans C:\ représentant des dossiers.
MyPath = "c:\" ' Définit le chemin d'accès.
MyName = Dir(MyPath, vbDirectory) ' Extrait la première entrée.
Do While MyName <> "" ' Commence la boucle.
' Ignore le dossier courant et le dossier
' contenant le dossier courant.
If MyName <> "." And MyName <> ".." Then
' Utilise une comparaison au niveau du bit pour
' vérifier que MyName est un dossier.
If (GetAttr(MyPath & MyName) _
And vbDirectory) = vbDirectory Then
Debug.Print MyName ' Affiche l'entrée uniquement si elle
End If ' représente un dossier.
End If
MyName = Dir ' Extrait l'entrée suivante.
Loop

Catherine
 
- 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

Réponses
4
Affichages
312
Réponses
4
Affichages
221
  • Question Question
Microsoft 365 Liste de choix...
Réponses
8
Affichages
206
Retour