Ouverture de fichier sans connaître le nom [Résolu]

Signaler
Messages postés
126
Date d'inscription
mardi 9 septembre 2008
Statut
Membre
Dernière intervention
20 novembre 2019
-
Lameche15
Messages postés
126
Date d'inscription
mardi 9 septembre 2008
Statut
Membre
Dernière intervention
20 novembre 2019
-
Bonjour,

Je souhaiterais pouvoir balayer tous les sous-dossiers contenant chacun un fichier excel et après l'ouvrir, copier la première ligne et la coller dans le classeur contenant la macro.
J'ai commencé à écrire le code suivant:

 Sub Liste_Unique()
Racine = CurDir

Set fs = CreateObject("Scripting.FileSystemObject")
Set Dossier = fs.getfolder(Racine)
For Each d In Dossier.SubFolders

nomfichier = Dir(d & "\*.xlsx")
MsgBox nomfichier
'Workbooks.Open Filename:=Dir(d & "\*.xlsx")

'Workbooks.Open nomfichier
Next

End Sub


Voici le message d'erreur que j'obtiens:


Quelqu'un a t-il une idée du problème?

Merci d'avance




--

4 réponses

Messages postés
7959
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
22 février 2020
16
Bonjour,

Pour ouvrir un fichier, il est préférable de donner le chemin complet (DIR ne fournit que le nom)

Cordialement
Patrice
Messages postés
2076
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
22 février 2020
86
Bonjsoir
En complément de la réponde de Patrice33740 que je salue un lien utile : https://www.excel-downloads.com/threads/fonction-dir.139255/
Ceci ne te renvoie que le nom du fichier
Messages postés
126
Date d'inscription
mardi 9 septembre 2008
Statut
Membre
Dernière intervention
20 novembre 2019

Du coup je tente ce code mais rien n'y fait:

Sub Liste_Unique()
Dim Racine, nomfichier, fichier As String

Racine = "F:\Dossiers Communs\THM\RECENSEMENT DES MS\Fichiers à envoyer à AREO\MURS"

Set fs = CreateObject("Scripting.FileSystemObject")
Set Dossier = fs.getfolder(Racine)
For Each d In Dossier.SubFolders

nomfichier = Dir(d & "\*.xlsx")
'MsgBox d
'MsgBox nomfichier

fichier = "" & Racine & "\" & d & "\" & nomfichier
Workbooks.Open Filename:="" & fichier



'Workbooks.Open fichier


Next


End Sub
Messages postés
126
Date d'inscription
mardi 9 septembre 2008
Statut
Membre
Dernière intervention
20 novembre 2019

Pardon autant pour moi j'ai trouvé mon erreur, d est suffisant puisque le dir me retourne le chemin en entier jusqu'au sous dossiers

Merci infiniment pour votre aide

--