Excel VBA : Ouvrir un fichier nom variable

Résolu/Fermé
Eaheru Messages postés 197 Date d'inscription mercredi 23 juin 2010 Statut Membre Dernière intervention 12 mars 2018 - 27 août 2010 à 11:46
VincMalin Messages postés 11 Date d'inscription vendredi 11 novembre 2016 Statut Membre Dernière intervention 20 février 2017 - 13 nov. 2016 à 15:35
Bonjour,

Je souhaiterais ouvrir un fichier dont le nom est constitué d'une racine et d'une date.
Ex : toto_26-08-2010.xls

Vu que la date est variable, je cherche à faire une macro d'ouverture qui lancerait le fichier toto_*.xls

Merci d'avance pour votre aide.

1 réponse

Eaheru Messages postés 197 Date d'inscription mercredi 23 juin 2010 Statut Membre Dernière intervention 12 mars 2018 20
27 août 2010 à 14:12
Aprés maintes recherches, j'ai trouve quelque chose :

Sub Ouverture()
'
' Ouverture du fichier precedent (J-X)
Dim Chemin As String
Dim Part As String
Dim Chem2 As String

Chemin = "c:\tmp" & "\"

Part = "Liste_"

Chem2 = Dir(Chemin & "\" & Part & "*.xls")

'Ouverture du fichier
Workbooks.Open Filename:=Chemin & "\" & Dir(Chemin & "\" & Part & "*.xls")

End Sub


Je ne suis pas sur que ce soit optimisé, mais ça fonctionne bien :)
1
nirG95 Messages postés 292 Date d'inscription lundi 21 avril 2008 Statut Membre Dernière intervention 15 décembre 2010 32
27 août 2010 à 14:20
Oui c'est très bien.

Mais si tu as plusieurs fichier qui se nommes Liste_ (Liste_1,Liste_2,Liste_3) tout tes fichiers s'ouvriront.

C'est * qui permet de dire tous. toto*.xls ouvrira tous les fichiers qui commenceront par toto et qui finiront par .xls

Cdlt.
0
VincMalin Messages postés 11 Date d'inscription vendredi 11 novembre 2016 Statut Membre Dernière intervention 20 février 2017 > nirG95 Messages postés 292 Date d'inscription lundi 21 avril 2008 Statut Membre Dernière intervention 15 décembre 2010
13 nov. 2016 à 15:35
Bonjour,
J'ai le même type de problématique. Ma variable affaire est longue à saisir pour l'utilisateur. Je souhaite limiter la saisie au 4 ou 5 premier caractères. Il faut peu être utilisé * mais je ne vois pas comment. Merci de votre aide.

Voici mon code :
année = TextBox1
affaire = TextBox2
Workbooks.Open Filename:="D:\Users\Malinge\Documents\" & année & "\" & affaire & ".xls"
0