Bonjour à tous,

Je débute en programmation et j'essaie actuellement d'importer des données d'un classeur Excel dans un autre.

J'ai réussi à faire ce que je voulais grâce à ce code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
Sub Importer_donnees()
    'L'utilisateur choisi un fichier à ouvrir
    Application.Workbooks.Open Application.GetOpenFilename()
    Cells.Select
    Selection.Copy
    ActiveWindow.Close
    ThisWorkbook.Activate
    Sheets("Données importées").Select
    Range("A1").Select
    ActiveSheet.Paste
End Sub
Cependant, il reste 2 problèmes que je n'arrive pas à gérer...

Tout d'abord, si j'annule l'ouverture du document grâce à "GetOpenFilename", le système prend ça comme un "FAUX" et va tenter de chercher le fichier faux.xlsx, ce qui n'aboutit à rien. Y a-t-il un moyen pour faire considérer le "faux" comme une annulation de la commande ?

Quand à mon 2ème problème, il s'agit du presse-papier. Une fois les données copiées, lors de "ActiveWindow.Close", la fenêtre demandant si je veux sauvegarder les données du press-papier apparaît. Si je dit "oui", tout se passe bien. Mais si je dit "non", il y aura un bug lors de "ActiveSheet.Paste". Y aurait-il un moyen afin d'auto-valider la sauvegarde en press-papier ?

Voilà les 2 soucis que je n'ai pas réussi à résoudre ! Si vous avez un peu de temps pour m'aider à trouver des solutions, je vous en serez reconnaissant !

Merci et bonne journée,
Erwith