VBA Insérer une ligne ou une colonne

Ce didacticiel montrera comment utiliser VBA pour insérer des lignes et des colonnes dans Excel.

Pour insérer des lignes ou des colonnes, nous utiliserons le Méthode d'insertion.

Insérer une seule ligne ou colonne

Insérer une nouvelle ligne

Pour insérer une seule ligne, vous pouvez utiliser l'objet Rows :

1 Lignes(4).Insérer

Ou vous pouvez utiliser l'objet Range avec EntireRow :

1 Range("b4").EntireRow.Insert

Insérer une nouvelle colonne

Semblable à l'insertion de lignes, nous pouvons utiliser l'objet Columns pour insérer une colonne :

1 Colonnes(4).Insérer

Ou l'objet Range, avec EntireColumn :

1 Plage("b4").Colonne entière.Insérer

Insérer plusieurs lignes ou colonnes

Insérer plusieurs lignes

Lors de l'insertion de plusieurs lignes avec l'objet Rows, vous devez saisir les lignes entre guillemets :

1 Lignes("4:6").Insérer

L'insertion de plusieurs lignes avec l'objet Range fonctionne de la même manière qu'avec une seule ligne :

1 Range("b4:b6").EntireRow.Insert

Insérer plusieurs colonnes

Lors de l'insertion de plusieurs colonnes avec l'objet Colonnes, saisissez la colonne des lettres entre guillemets :

1 Colonnes("B:D").Insérer

L'insertion de plusieurs colonnes avec l'objet Range fonctionne de la même manière qu'avec une seule colonne :

1 Plage("b4:d4").Colonne entière.Insérer

Insérer - Shift & CopyOrigin

Les Méthode d'insertion a deux arguments facultatifs :

  • Décalage - Dans quelle direction déplacer les cellules
  • Copier l'origine - Quelle mise en forme de cellule copier (en haut, en bas, à gauche ou à droite)

L'argument Shift n'est pas pertinent lors de l'insertion de lignes ou de colonnes entières. Il vous permet seulement d'indiquer pour décaler vers le bas ou vers la droite :

  • xlMajBas - Décaler les cellules vers le bas
  • xlMajVersDroite - Déplacer les cellules vers la droite

Comme vous pouvez le voir, vous ne pouvez pas vous déplacer vers le haut ou vers la droite.

Les Copier l'origine argument a deux entrées potentielles:

  • xlFormatDeGaucheAu-dessus - (0) Les cellules nouvellement insérées prennent la mise en forme à partir des cellules situées au-dessus ou à gauche
  • xlFormatFromRightorBelow (1) Les cellules nouvellement insérées sont mises en forme à partir des cellules situées en dessous ou à droite.

Voyons quelques exemples de Copier l'origine argument. Voici nos données initiales :

Cet exemple insère une ligne en reprenant la mise en forme de la ligne ci-dessus.

1 Rows(5).Insert , xlFormatFromLeftOrAbove

Cet exemple insère une ligne, en prenant la mise en forme de la ligne ci-dessous.

1 Rows(5).Insert , xlFormatFromRightOrBelow

Autres exemples d'insertion

Insérer des lignes ou des colonnes copiées

Si vous souhaitez insérer une ligne copiée, vous utiliserez un code comme celui-ci :

12 Plage("1:1").CopierPlage ("5:5").Insérer

Ici, nous copions la ligne 1 et l'insérons à la ligne 5.

Insérer des lignes en fonction de la valeur de la cellule

Cela va parcourir une plage en insérant des lignes en fonction des valeurs de cellule :

1234567891011 Sub InsertRowswithSpecificValue()Cellule tamisée en tant que plagePour chaque cellule de la plage ("b2:b20")Si cellule.Valeur = "insérer" Alorscell.EntireRow.InsertFin siCellule suivanteFin du sous-marin

Supprimer des lignes ou des colonnes

Pour supprimer des lignes ou des colonnes, utilisez simplement le Effacer méthode.

1234567 Lignes(1).SupprimerRange("a1").EntireRow.DeleteColonnes(1).SupprimerPlage("a1").Colonne entière.Supprimer

Vous contribuerez au développement du site, partager la page avec vos amis

wave wave wave wave wave