Une seule ligne de code suffit pour copier-coller des cellules, plages, lignes ou colonnes. Voici quelques exemples :
Copie de la cellule G5 en G30 :
Range("G5").Copy Range("G30")
Copie de la colonne A dans la colonne G :
Range("A:A").Copy Range("G:G")
Copie de la ligne 13 dans la ligne 25 :
Range("13:13").Copy Range("25:25")
Copie de la plage A2:C3 de la feuille courante à partir de la cellule A1 du classeur Feuil2 :
Range("A2:C3").Copy Worksheets("Feuil2").Range("A1")
Remarque
Ces instructions n’utilisent pas le presse-papiers multiple d’Office.
Dans tous ces exemples, le contenu des cellules et leur mise en forme sont copies-collés. Si vous voulez limiter le copier-coller aux valeurs ou à la mise en forme, vous devrez utiliser un collage spécial. Ici par exemple, les valeurs de la plage A2:B8 sont copiées en C12, sans tenir compte de la mise en forme :
Set range1 = Range("A2:B8") range1.Copy Range("C12").Select ActiveCell.PasteSpecial Paste:=xlPasteValues
Vous voulez copier-coller la mise en forme mais pas la valeur des cellules ? Remplacez la constante xlPasteValues par la constante xlPasteFormats. Le code devient :
Set range1 = Range("A2:B8") range1.Copy Range("C12").Select ActiveCell.PasteSpecial Paste:=xlPasteFormats