Copie - colle de plage de cellule vers nouveau classeur

Bonjour à tous ! j'ai un petit problème ( de débutant ) que j'aimerais résoudre. J'ai une plage de cellule à copier d'un classeur, et à coller dans un autre classeur.

dans l'idéale j'aimerais qu' Excel me demande le chemin du dossier avant de copier la plage(cellule de départ ne change pas), sans forcement l'ouvrir (si ce n'est pas possible tant pis) qui sera collé dans le classeur ouvert (la ou j'ajouterais les bouton de macro). Voici mon début de code ou je pense avoir fait une erreur lors du copié collé :

Sub CopieDynamique()

'déclaration des variables
Dim sht As Worksheet
Dim LastRow As Long
Dim LastColumn As Long
Dim StartCell As Range

Set sht = Workbooks("WKB 1").Worksheets("sheet 1")
Set StartCell = Range("A9")

'derniere ligne et colonne
  LastRow = StartCell.End(xlDown).Row
  LastColumn = sht.Cells(StartCell.Row, sht.Columns.Count).End(xlToLeft).Column

'Choix de la plage
  sht.Range(StartCell, sht.Cells(LastRow, LastColumn)).Select.Copy
  Workbooks("WKB 2").Worksheets("Sheet 1").Range("I4:BB34").PasteSpecial Paste:=xlPasteValues

End Sub

Merci pour votre aide ! :)

tu as un fichier a transmettre ??

Bonjour Slygan, voici des fichier ressemblant (je ne peux pas poster les originaux) mais l'idée reste la même et les fichier sont similaire (juste un peu moins d'infos) il faut copier la plage du WKB1 et remplacer les valeurs (en brut) dans WKB2 (les en-têtes sont les mêmes on peut donc les conserver)

7wkb1.xlsx (19.80 Ko)
5wkb2.xlsx (20.14 Ko)

je comprend pas pourquoi tu passe par un code vba ....

juste une formule "=" qui va te chercher les infos dans l'autre classeur et puis c'est reglé... , un "sierreur" en cas de besoin et puis tu cree juste un bouton pour la validation ... non ?

Le tableau du premier classeur est variable il peut contenir plus ou moins de ligne et j'ai besoin de les collé en brut. Pour aller plus loin je souhaite une boite de dialogue qui me demande le chemin du fichier car le premier fichier est variable il change de nom et de dossier selon le mois. je pense donc, peut-être à tort, qu'il sera plus simple de réaliser toutes ces manip via vba pour simplifier la manœuvre.

j'ai par ailleurs fais quelque modification sur mon code mais j'obtient l'erreur d'execution 424 :

Dim LastColumn As Long
Dim StartCell As Range

Set sht = Workbooks.Open("chemin\WKB2.xlsx").Worksheets("feuille 1")
Set StartCell = Range("A9")

'derniere ligne et colonne
  LastRow = StartCell.End(xlDown).Row
  LastColumn = sht.Cells(StartCell.Row, sht.Columns.Count).End(xlToLeft).Column

'Choix de la plage
  sht.Activate
  sht.Range(StartCell, sht.Cells(LastRow, LastColumn)).Copy

End Sub

Sub CollerDynamique()

'copie colle vers nouveau classeur

Workbooks.Open ("chemin\WKB2.xlsx")
Worksheets("sheet 1").Select.PasteSpecial (xlPateValues)

End Sub

je ne comprends pas très bien l'erreur

Rechercher des sujets similaires à "copie colle plage nouveau classeur"