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.
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
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.
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.
Vous pouvez utiliser Range("A1").HorizontalAlignment = xlLeft
ou ... = xlRight
Bien sûr, ajustez la ou les gammes si nécessaire.