Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Ouvrir fichier selon les x premiers caractères

6 réponses
Avatar
Roland Miller
Bonjour,

Disons que dans un r=C3=A9pertoire il y a un fichier XLlet_lc1.1_2019.xlsm.

J'ai besoin d'ouvrir le fichier avec le nom d=C3=A9butant par XLlet_lc1.1_ =
et donc =E2=80=A6
ne pas tenir compte de ce qui suit.

Alors que le fichier soit nomm=C3=A9 XLlet_lc1.1_2018.xlsm ou XLlet_lc1.1_2=
019.xlsm ou XLlet_lc1.1_2020.xlsm =E2=80=A6 cela devrait alors ouvrir le pr=
emier fichier reconnu avec ces premiers caract=C3=A8res.

Est-ce possible?

Merci =C3=A0 l'avance.

6 réponses

Avatar
MichD
Le 04/01/20 à 18:11, Roland Miller a écrit :
Bonjour,
Disons que dans un répertoire il y a un fichier XLlet_lc1.1_2019.xlsm.
J'ai besoin d'ouvrir le fichier avec le nom débutant par XLlet_lc1.1_ et donc …
ne pas tenir compte de ce qui suit.
Alors que le fichier soit nommé XLlet_lc1.1_2018.xlsm ou XLlet_lc1.1_2019.xlsm ou XLlet_lc1.1_2020.xlsm … cela devrait alors ouvrir le premier fichier reconnu avec ces premiers caractères.
Est-ce possible?
Merci à l'avance.

Bonjour,
Cette procédure devrait ouvrir le premier fichier qui débute par
"XLlet_lc1.1_" et qui porte l'extension ".xlsm".
Tu dois adapte la variable "Repertoire" selon l'endroit où se trouve tes
fichiers. Ne pas oublier à la fin le symbole "" du chemin indiqué.
'------------------------------
Sub test()
Dim Repertoire As String, Fichier As String
Dim File As String
'Le début du nom du fichier à ouvrir
Fichier = "XLlet_lc1.1_"
'Répertoire où sont les fichiers que tu tentes d'ouvrir
Repertoire = "I:Téléchargements"
File = Dir(Repertoire & Fichier & "*.xlsm")
If File <> "" Then
Workbooks.Open (File)
End If
End Sub
'------------------------------
MichD
Avatar
MichD
Dans la procédure proposée, il faudrait modifier cette ligne de code :
Workbooks.Open (File)
Par
Workbooks.Open Repertoire & File
MichD
Avatar
MichD
Le 04/01/20 à 21:23, MichD a écrit :
Le 04/01/20 à 18:11, Roland Miller a écrit :
Bonjour,
Disons que dans un répertoire il y a un fichier XLlet_lc1.1_2019.xlsm.
J'ai besoin d'ouvrir le fichier avec le nom débutant par XLlet_lc1.1_
et donc …
ne pas tenir compte de ce qui suit.
Alors que le fichier soit nommé XLlet_lc1.1_2018.xlsm ou
XLlet_lc1.1_2019.xlsm ou XLlet_lc1.1_2020.xlsm … cela devrait alors
ouvrir le premier fichier reconnu avec ces premiers caractères.
Est-ce possible?
Merci à l'avance.

Bonjour,
Cette procédure devrait ouvrir le premier fichier qui débute par
"XLlet_lc1.1_" et qui porte l'extension ".xlsm".
Tu dois adapte la variable "Repertoire" selon l'endroit où se trouve tes
fichiers. Ne pas oublier à la fin le symbole "" du chemin indiqué.
'------------------------------
Sub test()
Dim Repertoire As String, Fichier As String
Dim File As String
'Le début du nom du fichier à ouvrir
Fichier = "XLlet_lc1.1_"
'Répertoire où sont les fichiers que tu tentes d'ouvrir
Repertoire = "I:Téléchargements"
File = Dir(Repertoire & Fichier & "*.xlsm")
If File <> "" Then
    Workbooks.Open (File)
End If
End Sub
'------------------------------
MichD

Si tu veux boucler sur tous les fichiers répondants aux premiers
caractère spécifiés des noms des fichiers :
------------------------------
Sub test()
Dim Repertoire As String, Fichier As String
Dim File As String
'Le début du nom du fichier à ouvrir
Fichier = "XLlet_lc1.1_"
'Répertoire où sont les fichiers que tu tentes d'ouvrir
Repertoire = "I:Téléchargements"
File = Dir(Repertoire & Fichier & "*.xlsm")
Do While file <> ""
Workbooks.Open repertoire & file
File = dir()
Loop
End Sub
------------------------------
Avatar
Roland Miller
Merci beaucoup. J'ai pu adapter le code à ma situation et ça fonc tionne.
Je recherche maintenant à récupérer le chemin du répert oire du fichier.
Disons que j'ai par exemple "D:DossiersXLLettresXLlet_lc1.1_"
Comment ne récupérer que le répertoire par VBA? "D:Dossiers XLLettres
J'ai cherché mais en vain. Merci à l'avance.
Avatar
MichD
Le 06/01/20 à 12:41, Roland Miller a écrit :
Merci beaucoup. J'ai pu adapter le code à ma situation et ça fonctionne.
Je recherche maintenant à récupérer le chemin du répertoire du fichier.
Disons que j'ai par exemple "D:DossiersXLLettresXLlet_lc1.1_"
Comment ne récupérer que le répertoire par VBA? "D:DossiersXLLettres
J'ai cherché mais en vain. Merci à l'avance.

Bonjour,
x = "D:DossiersXLLettresfdfdf"
y = Mid(x, 1, InStrRev(x, ""))
Ceci retourne : "D:DossiersXLLettres"
Et pour obtenir ceci : "D:DossiersXLLettres"
Emploie : y = Mid(x, 1, InStrRev(x, "") - 1)
MichD
Avatar
Roland Miller
Super et merci. Ça fonctionne parfaitement.