VBA – Fusionner et Défusionner des Cellules

Written by

Editorial Team

Reviewed by

Steve Rynearson

Translated by

David Gagnon

Last updated on janvier 12, 2022

Dans ce tutoriel, nous allons examiner les différentes façons de fusionner des cellules à l’aide de VBA.

Fusionner des Cellules à l’Aide de VBA

Vous pouvez fusionner des cellules en VBA à l’aide de la méthode Range.Merge. Le code suivant fusionne les cellules A1:C1 :

Sub FusionnerCellules()

Range("A1:C1").Merge

End Sub

Le résultat est le suivant :

Défusionner des Cellules à l’Aide de VBA

Vous pouvez défusionner une plage de cellules à l’aide de la méthode Range.UnMerge. Supposons que vous ayez fusionné la plage de cellules A1:D1. Vous pouvez utiliser l’une des références de cellule de la plage pour défusionner les cellules. Le code suivant vous montre comment défusionner les cellules A1:D1, dans ce cas nous utilisons la référence à la cellule B1 :

Sub DéfusionnerCellules()

Range("B1").UnMerge

End Sub

Autres Exemples de Fusion

Fusion de Lignes à l’Aide de VBA

Vous pouvez fusionner des lignes à l’aide de VBA en spécifiant les numéros des lignes que vous souhaitez fusionner. Le texte de la cellule A1 est présenté ci-dessous :

Le code suivant fusionnera les lignes 1 à 4 :

Sub FusionnerLignes()

Range("1:4").Merge

End Sub

Le résultat est le suivant :

Fusionner des Colonnes à l’Aide de VBA

Vous pouvez fusionner des colonnes en utilisant VBA et les lettres des colonnes. Le code suivant fusionnera les colonnes A:C.

Sub FusionnerColonnes()

Range("A:C").Merge

End Sub

Le résultat est le suivant :

Fusionner et Centrer le Contenu des Cellules Horizontalement

Vous pouvez fusionner et centrer le contenu des cellules horizontalement dans une plage de cellules. Pour ce faire, vous devez fusionner les cellules concernées et définir la propriété d’alignement horizontal de l’objet plage sur xlCenter. Nous avons le texte dans la cellule A1 comme indiqué ci-dessous :

Le code suivant fusionne la plage de cellules A1:D1 et centre le contenu de la cellule A1 horizontalement sur cette plage de cellules :

Sub FusionnerCentrerContenuHorizontalement()

Range("A1:D1").Merge
Range("A1:D1").HorizontalAlignment = xlCenter

End Sub

Le résultat est le suivant :

Fusionner et Centrer le Contenu des Cellules Verticalement

Vous pouvez fusionner et centrer le contenu des cellules verticalement dans une plage de cellules. Pour ce faire, vous devez fusionner les cellules concernées et définir la propriété d’alignement vertical de l’objet plage sur xlCenter. Nous avons le texte dans la cellule A1 comme indiqué ci-dessous :

Le code suivant fusionne la plage de cellules A1:A4 et centre le contenu de la cellule A1 verticalement sur cette plage de cellules :

Sub FusionnerCentrerContenuVerticalement()

Range("A1:A4").Merge
Range("A1:D1").VerticalAlignment = xlCenter

End Sub

Le résultat est le suivant :

Fusionner les Cellules d’une Plage de Cellules par Rangées Individuelles

Vous pouvez fusionner des cellules dans une plage de cellules de façon à obtenir des cellules fusionnées individuelles par rangées. Vous devez définir le paramètre optionnel Across de la méthode Merge sur True. Nous avons le texte dans la cellule A1 comme indiqué ci-dessous :

Le code suivant fusionnera la plage de cellules A1:D1 :

Sub FusionnerCellulesParRangées()

Range("A1:C3").Merge Across:=True

End Sub

Le résultat est le suivant :

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