Ouverture d'un fichier et collage dans un autre fichier

Lils_Bis Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   -  
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je reviens vers vous à propos d'un problème que je rentre.
Pour ce qui est du contexte de mon problème il faut savoir que j'ai un fichier "ESSAI". Au sein de celui-ci, j'ai créé une feuille 'DATA'. Je voudrais qu'après avoir sélectionner un fichier dans l'environnement de recherche WINDOWS, les données de ce fichier (qui ne contient qu'une feuille) soient collées dans le fichier "ESSAI" et de la feuille 'DATA'.

En sachant que je dois passer par l'explorateur WINDOWS car le fichier que je vais y chercher, changera chaque semaine.

En vous remerciant !
A voir également:

1 réponse

cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Bonjour,

voici 2 maniéres d'ouvrir un fichier:

https://vb.developpez.com/faqvba/?page=3.2#BookOpen

Application.Workbooks.Open Application.GetOpenFilename()

https://grenier.self-access.com/access/fichiers/boite-de-dialogue-fichierouvrir/

'Cliquez sur le menu Outils / Références.
'Dans la liste, cochez Microsoft Office x.y Object Library
Sub SelectionFichier02()
  Dim fd As Office.FileDialog
  
  ' Créer un objet FileDialog
  Set fd = Application.FileDialog(msoFileDialogOpen)
  
  ' Titre de la boîte de dialogue
  fd.Title = "Sélectionnez un fichier..."
  
  ' Ne pas autoriser la sélection multiple
  ' (donc 1 seul fichier est sélectionnable à la fois)
  fd.AllowMultiSelect = False
  
  ' Définir les types de fichiers autorisés
  fd.Filters.Clear
  fd.Filters.Add "Excel", "*.xlsx; *.xlsm; *.xls"
  
  ' Présélectionner le 2ème type de fichier (classeur avec macros)
  fd.FilterIndex = 2
  
  ' Afficher la boîte de dialogue
  If fd.Show() Then
   Application.Workbooks.Open fd.SelectedItems(1)
  End If
  Set fd = Nothing
End Sub


ensuite quand le classeur est ouvert, il suffit de faire le copier coller.

Pour le faire par code, il y a l'enregistreur de macro qui est utile, il suffit ensuite d'adapter la macro ainsi obtenue


1