VBA : Comment insérer une ligne avec formatage



Vous pouvez utiliser la syntaxe suivante dans VBA pour insérer une ligne ayant le même format que la ligne située au-dessus :

Sub insertRowWithFormatting()

ActiveCell.Offset(1).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrAbove
ActiveCell.EntireRow.Copy
ActiveCell.Offset(1).EntireRow.PasteSpecial xlPasteFormats

Application.CutCopyMode = False

End Sub

Cette macro particulière insérera une ligne sous la cellule actuellement sélectionnée avec exactement le même formatage que les cellules de la ligne actuellement sélectionnée.

Remarque : La ligne Application.CutCopyMode = False précise que le mode couper et copier doit être désactivé après l’exécution de la macro.

L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.

Connexe : Comment insérer plusieurs lignes à l’aide de VBA

Exemple : Insérer une ligne avec formatage dans VBA

Supposons que nous ayons l’ensemble de données suivant dans Excel qui contient des informations sur divers joueurs de basket-ball :

Supposons que nous souhaitions insérer une ligne sous la ligne 2 avec exactement le même formatage.

Nous pouvons créer la macro suivante pour ce faire :

Sub insertRowWithFormatting()

ActiveCell.Offset(1).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrAbove
ActiveCell.EntireRow.Copy
ActiveCell.Offset(1).EntireRow.PasteSpecial xlPasteFormats

Application.CutCopyMode = False

End Sub

Nous pouvons ensuite sélectionner la cellule A2 puis exécuter cette macro.

Lorsque nous exécutons cette macro, nous recevons le résultat suivant :

Notez que la nouvelle ligne que nous avons insérée a exactement le même format que les cellules de la ligne 2, y compris les couleurs des cellules et la bordure.

Notez également que toutes les autres lignes de l’ensemble de données existant ont simplement été repoussées vers le bas.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :

VBA : Comment trouver la dernière ligne utilisée
VBA : Comment compter le nombre de lignes dans la plage
VBA : Comment compter le nombre de colonnes utilisées

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *