Copier-Coller une plage de cellules/ VBA

Bonsoir à tous !

Débutante en VBA, je me tourne vers ce forum suite à quelques difficultés pour rédiger mon code !

Je cherche à copier un premier tableau qui se trouve sur la feuille "Calculs". Je sais où il débute mais pas où il finit (sa taille est variable).

Je souhaite ensuite le coller sur une autre page, Recap. je connais la ligne où je souhaite le coller mais la colonne est variable est donc prédéfini..

Voici mon premier code

Sub CollageETPscoffret()

Dim derlig As Long
Dim dercol As Long
Dim WsS As Worksheet, WsC As Worksheet
Dim i As Integer
i=5 'numéro de colonne où je vaos copier mon tableau

Set WsS=Worsheets("Calculs") 'feuille source
Set WsC=Worsheets("Récap") 'feuille cible

derlig = WsS.Range("B65536").End(xlUp).Row 'je définis la dernière ligne de mon tableau que je souhaite copier
dercol = WsS.Range("B143").End(xlToLeft).Column 'je définis la dernière colonnede mon tableau que je souhaite copier

Range(Cells(143, 2), Cells(derlig, dercol)).Copy 'je copie

Range("Recap!"(Cells(63,i)).Paste 'je colle mon tableau à partir de ma cellule sur la ligne 63 et à partir de la colonne prédéfinie, ici 5 donc la colonne E

End Sub

Je crois bien que ma dernière ligne de code est totalement fausse, je ne connais vraiment pas la syntaxe appropriée, et cela malgré de longues recherches sur internet...

Je serai extrêmement reconnaissante à tous ceux qui pourraient jeter un petit coup d'oeil à mon problème !!!! je bloque complètement... :/

Merci d'avance !

Marie

Bonjour

A tester : Valable si le code est lancé avec la feuille source sélectionnée

Sub CollageETPscoffret()

Dim derlig As Long
Dim dercol As Long
Dim WsS As Worksheet, WsC As Worksheet
Dim i As Integer

  i = 5       'numéro de colonne où je vaos copier mon tableau

  Set WsS = Sheets("Calculs") 'feuille source
  Set WsC = Sheets("Récap") 'feuille cible

  derlig = WsS.Range("B" & Rows.Count).End(xlUp).Row 'je définis la dernière ligne de mon tableau que je souhaite copier
  dercol = WsS.Cells(143, Columns.Count).End(xlToLeft).Column 'je définis la dernière colonnede mon tableau que je souhaite copier

  Range(Cells(143, 2), Cells(derlig, dercol)).Copy WsC.Cells(63, i)   'je copie
End Sub

Super ! Merci beaucoup Banzai64 !

Rechercher des sujets similaires à "copier coller plage vba"