Importation de données avec MsgBox
M
Bonjour à tout le monde,
J'ai réussi à coder une macro pour copier des données d'un fichier excel à l'autre mais je voudrais en fait pouvoir choisir mon fichier source à l'aide d'un MsgBox. Tout ça afin d'associer la macro à un bouton qui me permet de choisir mon fichier et copier sont contenu automatiquement.
Je vous laisse ce que j'ai réussi à faire.
Merci !!
Sub test()
Dim classeurSource As Workbook, classeurDestination As Workbook
'ouvrir le classeur source
Set classeurSource = Application.Workbooks.Open("C:\source.xlsx", , True)
'définir le classeur destination
Set classeurDestination = ThisWorkbook
'copier les données de la "Feuil1" du classeur source vers la "Feuil1" du classeur destination
classeurSource.Sheets("Feuil1").Cells.Copy classeurDestination.Sheets("Feuil1").Range("A1")
'fermer le classeur source
classeurSource.Close True
End SubBonjour Merinom,
Sub test()
Dim Filename As Variant
Dim classeurDestination As Workbook
Dim classeurSource As Workbook
'définir le classeur destination
Set classeurDestination = ThisWorkbook
ChDir "C:\Users\xxxxxx\Documents" ' adapter à votre répertoire
Filename = Application.GetOpenFilename(FileFilter:="Classeurs Excel,*.xls", _
Title:="Choissisez le classeur", MultiSelect:=False) ' adapter l'extension du fichier
If TypeName(Filename) = "Boolean" Then
Exit Sub 'la boîte de dialogue a été annulée
Else
'ouvrir le classeur source
Workbooks.Open Filename
Set classeurSource = ActiveWorkbook
classeurDestination.Activate
End If
'copier les données de la "Feuil1" du classeur source vers la "Feuil1" du classeur destination
classeurSource.Sheets("Feuil1").Cells.Copy classeurDestination.Sheets("Feuil1").Range("A1")
'fermer le classeur source
classeurSource.Close True
'vider l'espace
Set classeurDestination = Nothing
Set classeurSource = Nothing
End SubM
Merci sabV, c'est parfait!
Bonne journée!