VBA Copier / Coller des Lignes et des Colonnes

Written by

Editorial Team

Reviewed by

Steve Rynearson

Translated by

David Gagnon

Last updated on décembre 23, 2021

Ce tutoriel vous apprendra à copier (ou couper) des lignes ou des colonnes entières à l’aide de VBA. Nous abordons le copier-coller de plages de cellules dans un autre article.

Nous allons d’abord vous montrer comment coller ou insérer des lignes/colonnes copiées et discuter des différences. Ensuite, nous vous présenterons les différentes façons de référencer les lignes et les colonnes lors d’une copie ou d’une découpe.

Lignes et Colonnes – Coller et Insérer

Lorsque vous collez des lignes et des colonnes, vous avez deux possibilités : Vous pouvez coller par-dessus la ligne (ou la colonne) existante ou vous pouvez insérer une nouvelle ligne (ou colonne).

Voyons la différence…

Copier et Coller sur une Ligne / Colonne Existante

Cette opération copiera la ligne 1 et la collera dans la ligne 5 existante :

Range("1:1").Copy Range("5:5")

Cette opération copiera la colonne C et la collera dans la colonne E :

Range("C:C").Copy Range("E:E")

Copier et Insérer une Ligne / Colonne

Vous pouvez également insérer la ligne ou la colonne copiée et décaler les lignes ou les colonnes existantes pour faire de la place. Ceci copiera la ligne 1 et l’insérera dans la ligne 5, en décalant les lignes existantes vers le bas :

Range("1:1").Copy
Range("5:5").Insert

Cette opération copiera la colonne C et l’insérera dans la colonne E, en déplaçant les colonnes existantes vers la droite :

Range("C:C").Copy
Range("E:E").Insert

Copier une Rangée Entière

Nous allons vous montrer ci-dessous plusieurs façons de copier la ligne 1 et de la coller dans la ligne 5.

Range("1:1").Copy Range("5:5")
Range("A1").EntireRow.Copy Range("A5")
Rows(1).Copy Rows(5)

Couper et Coller des Lignes

Il suffit d’utiliser Cut au lieu de Copy pour couper et coller des lignes :

Rows(1).Cut Rows(5)

Copier Plusieurs Lignes

Voici des exemples de copie de plusieurs lignes à la fois :

Range("5:7").Copy Range("10:13")
Range("A5:A7").EntireRow.Copy Range("A10:A13")
Rows(5:7).Copy Rows(10:13)

Copier une Colonne Entière

Vous pouvez copier des colonnes entières de la même façon que vous copiez des lignes entières :

Range("C:C").Copy Range("E:E")
Range("C1").EntireColumn.Copy Range("C1").EntireColumn
Columns(3).Copy Range(5)

Couper et Coller des Colonnes

Il suffit d’utiliser la fonction Couper (« Cut ») au lieu de Copier (« Copy ») pour couper et coller des colonnes :

Range("C:C").Cut Range("E:E")

Copier Plusieurs Colonnes

Voici des exemples de copie de plusieurs colonnes à la fois :

Range("C:E").Copy Range("G:I")
Range("C1:E1").EntireColumn.Copy Range("G1:I1")
Columns(3:5).Copy Columns(7:9)

Copier des Lignes ou des Colonnes dans une Autre Feuille

Pour copier dans une autre feuille, il suffit d’utiliser l’objet Sheets:

Sheets("Feuil1").Range("C:E").Copy Sheets("Feuil2").Range("G:I")

Couper des Lignes ou des Colonnes vers une Autre Feuille

Vous pouvez utiliser exactement la même technique pour couper et coller des lignes ou des colonnes dans une autre feuille.

Sheets("Feuil1").Range("C:E").Cut Sheets("Feuil2").Range("G:I")
vba-free-addin

Module Complémentaire d'Exemples de Code VBA

Accédez facilement à tous les exemples disponibles sur le site.

Naviguez simplement dans le menu, cliquez, et le code sera inséré directement dans votre module. Module complémentaire .xlam.

(Aucune installation requise!)

Téléchargement gratuit

Retour aux exemples de code VBA