VBA Ouvrir classeur dont nom exact inconnu

juventinino

XLDnaute Nouveau
Bonjour à tous!

Dans un dossier donné, je voudrais ouvrir un fichier .xls (il n'y a qu'un seul fichier .xls dans ce dossier) dont je ne connais pas le noms exact.

J'avais commencé en faisant ça

Sub test()
If ThisWorkbook.Path & "\" & Range("M2").Value & "\Q" & Range("E11").Value & "\" & Range("Q2").Value & "\" & Range("G2").Value & "\" & "*.xls" <> "" Then
Workbooks.Open Filename:=ThisWorkbook.Path & "\" & Range("M2").Value & "\Q" & Range("E11").Value & "\" & Range("Q2").Value & "\" & Range("G2").Value & "\" & "*.xls"

End If
End Sub

A la limite, la seule chose que je sais, c'est que les 5 premiers caractères du fichier que je veux ouvrir sont les mêmes que ceux de la cellule G2

Merci beaucoup pour votre aide!!!!!!
 

job75

XLDnaute Barbatruc
Re : VBA Ouvrir classeur dont nom exact inconnu

Bonjour juventinino,

Code:
Sub test()
Dim chemin$, fichier$
chemin = ThisWorkbook.Path & "\" & [M2] & "\Q" & [E11] & "\" & [Q2] & "\" & [G2] & "\"
fichier = Dir(chemin & "*.xls") '1er fichier trouvé s'il y en a plusieurs
If fichier <> "" Then Workbooks.Open chemin & fichier Else MsgBox "Fichier introuvable..."
End Sub
Edit : bien sûr si l'extension du fichier peut être .xls ou .xlsx ou .xlsm écrire :

Code:
fichier = Dir(chemin & "*.xls*")
A+
 
Dernière édition:

juventinino

XLDnaute Nouveau
Re : VBA Ouvrir classeur dont nom exact inconnu

Merci c'est parfait !!

J'en profite pour s'avoir s'il n'est pas possible de rajouter du code afin que je n'ai pas les boites de dialogues qui me demandent si je veux mettre à jour ou non les données et qui m'averti que des liaisons peuvent ne pas être à jour.

Merci!!!!!!!!!!
 

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16