Médiaforma

VBA Excel – Copier-coller en VBA

Print Friendly, PDF & Email

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
Vous avez aimé cet article ? Partagez-le avec vos réseaux...
 
Comments

No comments yet.