Préféreriez-vous avoir le contrôle sur les utilisateurs qui importent des fichiers, au lieu de leur demander d'utiliser les fonctionnalités d'Excel pour le faire ? Vous avez besoin de plus de contrôle sur vos imports pour validation ou modification à l'import ? Il existe plusieurs façons de le faire et autant de variations d'exigences, mais voici quelques-uns des éléments de base à partir desquels commencer.
1. Mettez le code suivant dans un module puis exécutez-le
'Définir les variables 'Ouvrir la boîte de dialogue commune et obtenir le nom du fichier 'Vérifier l'annulation n'a pas été cliqué 'Importer le fichier Fin du sous-marinPublic Sub CustomImport()
Dim ImportFile As String
Dim ImportTitle en tant que chaîne
Dim TabName en tant que chaîne
Dim ControlFile As String
ImportFile = Application.GetOpenFilename( _
"Fichiers Excel, *.xls, Tous les fichiers, *.*")
ImportTitle = _
Mid(ImportFile, InStrRev(ImportFile, "\") + 1)
Si ImportFile = "False" Alors
Quitter le sous
Fin si
TabName = "MyCustomImport"
ControlFile = ActiveWorkbook.Name
Workbooks.Open Filename:=ImportFile
ActiveSheet.Name = TabName
Sheets(TabName).Copier _
Avant : = Classeurs (FichierContrôle).Feuilles(1)
Windows(ImportTitle).Activer
ActiveWorkbook.Close SaveChanges:=False
Windows(ControlFile).Activer
Remarque : cela fonctionne bien pour les fichiers *.xls, *.xlsx, *.xlsm, *.csv et *.txt. Vous pouvez ajouter ou appeler le code avant le End Sub pour modifier les données importées avant que l'utilisateur ne puisse les toucher.