Erreur 1004 - La méthode Select de la base Range a échoué

Fermé
Etheldrede85 Messages postés 8 Date d'inscription mardi 27 novembre 2018 Statut Membre Dernière intervention 27 novembre 2018 - Modifié le 27 nov. 2018 à 11:11
Etheldrede85 Messages postés 8 Date d'inscription mardi 27 novembre 2018 Statut Membre Dernière intervention 27 novembre 2018 - 27 nov. 2018 à 13:28
Bonjour,

Débutante en VBA je cherche à exécuter une macro qui me permet de copier une plage de données d'un classeur 1 vers la 1ère ligne disponible d'un classeur 2.
J'ai cherché une solution à cette erreur 1004 sur nombre de forums mais je n'ai pas trouvé.

Pourriez-vous SVP m'apportez vos lumières pour corriger cette macro.

Sub Extraction()

Sheets("Feuil1").Range("a5:e18").Copy
Workbooks.Open Filename:="C:\Desktop\Classeur2.xlsm"
With Sheets("Feuil1").UsedRange: NoDeLaDernLig = .Cells(.Rows.Count, .Columns.Count).Row: End With
Sheets("Prélèvements").Cells(NoDeLaDernLig + 1, 1).Select
ActiveSheet.Paste
ActiveWorkbook.Save
ActiveWorkbook.Close

End Sub

Merci d'avance pour vos réponses.

6 réponses

Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
Modifié le 27 nov. 2018 à 11:10
Bonjour,

le problème vient de cette ligne de code ou il manque un anti-slash entre Desktop et le nom de ton classeur
Workbooks.Open Filename:="C: DesktopClasseur2.xlsm"

et le chemin d'accès au fichier doit être complet
Workbooks.Open Filename:="C:\Users\nom utilisateur\Desktop\Classeur2.xlsm"

éventuellement utilise l'assistant macro pour ouvrir ton Classeur2.xlsm pour le reproduire dans ton code

par contre si ton fichier est dans le même répertoire tu peux utiliser cette ligne de commande
Workbooks.Open Filename:=ThisWorkbook.Path & "\Classeur2.xlsm"
0