web-dev-qa-db-fra.com

Aligner le texte à gauche et à droite dans Excel?

J'ai un classeur dans lequel je dois aligner le texte (des cellules) à gauche et à droite. Je l'ai jusqu'à présent mais je ne sais pas comment procéder.

Sub M()

ActiveSheet.PageSetup.CenterHeader = ActiveSheet.Range("A1") & " " & 
ActiveSheet.Range("B1")

End Sub

Je veux savoir en général comment remplacer l'alignement du texte dans chaque partie de l'en-tête, mais dans ce cas, le texte doit être aligné à gauche dans les en-têtes droit et gauche.

3
Kevin López

J'interprète votre question comme suit: "Je veux avoir la valeur d'une cellule comme partie gauche de mon en-tête et la valeur d'une autre cellule comme partie droite de mon en-tête".

Si oui, vous voulez probablement:

Sub M()
    With ActiveSheet.PageSetup
        .LeftHeader = ActiveSheet.Range("A1").Value
        .CenterHeader = ""
        .RightHeader = ActiveSheet.Range("B1").Value
    End With
End Sub
2
YowE3K

Pour ce faire dans Excel, sélectionnez la section de cellules à aligner. Ensuite, tapez alt+H+A+L pour la gauche, alt+H+A+C pour le centre, et alt+H+A+R pour droit.

Cependant, d'après votre question, il semble que vous souhaitiez le faire dans VBA au lieu d'Excel. Si tel est le cas, faites ceci à la place:

Range(myRange).HorizontalAlignment = xlRight pour la droite et Range(myRange).HorizontalAlignment = xlLeft pour la gauche, où myRange est la plage de cellules.

3
Jsleshem

La propriété HorizontalAlignment de la plage doit correspondre à ce que vous recherchez. xlLeft ou xlRight sont des valeurs à aligner à gauche ou à droite.

Range.HorizontalAlignment = xlLeft 

ou

Range.HorizontalAlignment = xlRight

PAR EXEMPLE.

Sub M()

ActiveSheet.PageSetup.CenterHeader = ActiveSheet.Range("A1") & " " & 
ActiveSheet.Range("B1").HorizontalAlignment = xlRight

End Sub

alignerait la cellule B1 à droite.

1
Zachary Summers

Vous pouvez utiliser Range("A1").HorizontalAlignment = xlLeft ou ... = xlRight

Bien sûr, ajustez la ou les gammes si nécessaire.

0
BruceWayne