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

Ouverture en VBA d'un fichier dont le nom est incompler

2 réponses
Avatar
Laurent
Re Bonjour
Décidemment c'est aps ma journée aujourd'hui, vivement ce soir.
Je cherche à ouvrir un fichier mais je n'ai que le début (qui est unique).
Par exemple mon fichier s'appelle :
Mon Fichier 20051222 9:00:01.xls
Je connais la date (date du jour) mais l'heure peut varier, je passe par une
variable nom fichier qui concatène la date du jour et mon nom puis j'ai
essayé :
Workbooks.Open Filename:=NomFichier & "*".... mais ça ne focntionne pas.

Pouvez vous m'aider SVP
Merci d'avance
Laurent

2 réponses

Avatar
anonymousA
Bonjour ,

pas testé

Set fso = CreateObject("Scripting.FileSystemObject")

Directory1 = "C:TOTO"
With Application.FileSearch
.NewSearch
.LookIn = Directory1
.Filename = "*.xls"
.SearchSubFolders = False
.Execute
For i = 1 To .FoundFiles.Count
If Left(fso.GetBaseName(.FoundFiles(i)), 8) = "20051222" Then
Workbooks.Open .FoundFiles(i)
Exit For
Next
End With
Avatar
Laurent
Encore Merci.
Je pense que ça doit marcher, mais en fait ton idée m'a fait pensé à quelque
chose de plus simple la fonction "dir" :

nompartiel = "nomfichier" & date & "*.xls"
nomcomplet =dir(nompartiel)
Workbooks.Open Filename:=nomcomplet

.... et ca marche ...
Encore merci et joyeux Noel à tous, finis les macros pour moi cette semaine

Cdlmt
Laurent



Bonjour ,

pas testé

Set fso = CreateObject("Scripting.FileSystemObject")

Directory1 = "C:TOTO"
With Application.FileSearch
.NewSearch
.LookIn = Directory1
.Filename = "*.xls"
.SearchSubFolders = False
.Execute
For i = 1 To .FoundFiles.Count
If Left(fso.GetBaseName(.FoundFiles(i)), 8) = "20051222" Then
Workbooks.Open .FoundFiles(i)
Exit For
Next
End With