VBA – Centrer du Texte – Alignement des Cellules (Horizontal et Vertical)
In this Article
Ce tutoriel montre comment utiliser VBA pour centrer du texte dans des cellules, horizontalement et verticalement.
Nous pouvons utiliser le groupe Alignement du ruban d’accueil d’Excel pour centrer le texte horizontalement et verticalement dans une cellule. Si nous écrivons une macro pour formater du texte, nous pouvons recréer cette fonctionnalité à l’aide du code VBA.
Centrer le Texte Horizontalement
Pour centrer le texte horizontalement dans une seule cellule, nous pouvons utiliser le code suivant :
Sub CentrerTexte()
ActiveCell.HorizontalAlignment = xlCenter
End Sub
Sinon, pour centrer le texte horizontalement dans chaque cellule d’une plage de cellules sélectionnée, nous pouvons utiliser l’objet Sélection et procéder comme suit :
Sub CentrerTexte()
Selection.HorizontalAlignment = xlCenter
End Sub
Nous pouvons également modifier l’alignement à droite ou à gauche à l’aide des constantes xlLeft et xlRight.
Pour aligner à droite le texte d’une cellule, nous pouvons donc utiliser le code suivant :
Sub AlignerTexte()
ActiveCell.HorizontalAlignment = xlRight
End Sub
Centrer le Texte Verticalement
Le centrage du texte à la verticale se fait de la même manière qu’à l’horizontale.
Sub CentrerTexteVerticalement()
ActiveCell.VerticalAlignment = xlCenter
End Sub
Il en va de même pour le centrage vertical d’une sélection :
Sub CentrerTexteVerticalement()
Selection.VerticalAlignment = xlCenter
End Sub
Nous pouvons également aligner le texte en haut ou en bas d’une cellule ou d’une sélection à l’aide des constantes xlTop ou xlBottom.
Sub AlignerTexteHaut()
ActiveCell.VerticalAlignment = xlTop
End Sub
Centrer le Texte Horizontalement et Verticalement en Même Temps
Si nous voulons centrer le texte à la fois horizontalement et verticalement, il existe plusieurs façons de le faire.
Sub CentrerVerticalHorizontal()
ActiveCell.HorizontalAlignment = xlCenter
ActiveCell.VerticalAlignment = xlCenter
End Sub
Pour réduire les répétitions de code, nous pouvons utiliser une instruction With et End With.
Sub CentrerVerticalHorizontal()
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
End With
End Sub
Le code ci-dessus s’appliquera à toutes les cellules d’Excel sélectionnées à ce moment-là.
L’utilisation de With et End With est très efficace lorsque nous avons beaucoup de formatage à effectuer dans la sélection, comme la fusion de cellules ou la modification de l’orientation.
Sub FusionnerEtCentrer()
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.Orientation = -36
.MergeCells = True
End With
End Sub