(Edité) VBA Sélectionnez des files avec des lettres spécifiques et la numérotation de noms identiques avec une variation supplémentaire

Je commence à travailler avec des macros et j'ai une list de plus de 100 files à ouvrir dans VBA avec des noms tels que: Mark001.xls Mark_001_initial.xls Mark001_improvement.xls Mark002.xls Mark002_initial. Marc002_Improvement.xls Pol001.xls …

Sub Macro1() Dim FilesToOpen FilesToOpen = Application.GetOpenFilename _ (FileFilter:="EXLS Files(*.xls), *.xls," & "Mark??? Files (Mark???.xls), Mark???.xls", MultiSelect:=True, Title:="EXLS Files To Open") End Sub 

Cela ouvre une window pour sélectionner des files, mais il n'y a pas de files à sélectionner, il ne les identifie pas

Il existe également des files identiques au format .txt, mais j'ai seulement besoin d'ouvrir ceux du type Mark001.xls, les noms plus importants ne sont pas pertinents.

J'ai également besoin de les copyr dans un autre dossier. J'ai essayé d'utiliser les applications OpenFile, SerchFile et selectFile, mais n'a pas réussi.

Merci beaucoup!

    Pour les caractères generics Application.GetOpenFilename ne fonctionnent que pour l'extension de file comme dans

     FileFilter:="Excel files (*.xl*)," & "*.xl*" 

    Cela renverra tous les files * .xls et * .xlsx

    Autres options:

     Application.FileDialog (msoFileDialogOpen Or msoFileDialogFilePicker) 

    .

     Sub openWildFile() 'use params to make it generic: "ByVal partialName As Ssortingng" Const partialName As Ssortingng = "*Mark_" Const partialExt As Ssortingng = "*.xl*" Dim selectedFile As Ssortingng, dlg As Object 'A 3rd option is to use APIs Set dlg = Application.FileDialog(msoFileDialogOpen) 'Or (msoFileDialogFilePicker) With dlg .Title = "Select " & partialName & " File" With .Filters .Clear .Add partialName & " Files", partialExt End With .AllowMultiSelect = True .InitialFileName = partialName & partialExt If (.Show <> 0) Then selectedFile = Trim(.SelectedItems.Item(1)) End With End Sub 

    .

    Pour copyr des files, utilisez ceci:

     FileCopy SourceFile, DestinationFile ' Copy source file to target