Copier les données d'une feuille vers une autre

celplan

XLDnaute Nouveau
Bonsoir, je suis un débutant et je maîtrise pas le vba.
J'ai un classeur avec deux feuilles. je voudrai copier les données d'une feuille Personnels2018 vers la feuille Personnels2017. Voila le code que j'ai pu ecrire mais il y'a plusieurs ligne à copier et à coller. Pouvez vous m'aider à généraliser? Merci

Sub Copiercoller()
'Activation de la feuille Personnels
Sheets("Personnels2018").Activate
'Sélection de la plage B10 à W10 dans la feuille 2018

Workbooks("Questionnaire Enseignement Secondaire 2017.xlsm").Sheets("Personnels").Activate

Sheets("Personnels2017").Range("C23:L23").Value = Sheets("Personnels2018").Range("B10:w10").Value
Sheets("Personnels2017").Range("k25:L25").Value = Sheets("Personnels2018").Range("T10:U10").Value
Sheets("Personnels2017").Range("C27:L27").Value = Sheets("Personnels2018").Range("L10:S10").Value
Sheets("Personnels2017").Range("k27:L27").Value = Sheets("Personnels2018").Range("V10:W10").Value

Sheets("Personnels2017").Range("C31:L31").Value = Sheets("Personnels2018").Range("B11:w11").Value
Sheets("Personnels2017").Range("k33:L33").Value = Sheets("Personnels2018").Range("T11:U11").Value
Sheets("Personnels2017").Range("C35:L35").Value = Sheets("Personnels2018").Range("L11:S11").Value
Sheets("Personnels2017").Range("k35:L35").Value = Sheets("Personnels2018").Range("V11:W11").Value

Sheets("Personnels2017").Range("C39:L39").Value = Sheets("Personnels2018").Range("B12:w12").Value
Sheets("Personnels2017").Range("k41:L41").Value = Sheets("Personnels2018").Range("T12:U12").Value
Sheets("Personnels2017").Range("C43:L43").Value = Sheets("Personnels2018").Range("L12:S12").Value
Sheets("Personnels2017").Range("k43:L43").Value = Sheets("Personnels2018").Range("V12:W12").Value
 

Lone-wolf

XLDnaute Barbatruc
Bonsoir celplan et bienvenue sur XLD :)

VB:
Sub Copiercoller()
Dim f1 As Worksheet, f2 As Worksheet

Set f1 = Sheets("Personnels2018")
Set f2 = Sheets("Personnels2017")

With f1
.Range("B10:w10").Copy f2.Range("c23")
.Range("T10:U10").Copy f2.Range("k25")
.Range("L10:S10").Copy f2.Range("C27")
End With
End Sub

Faire de même pour les autres plages.
 

Discussions similaires

Statistiques des forums

Discussions
312 103
Messages
2 085 306
Membres
102 859
dernier inscrit
Diallokass