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 !