Questo tutorial dimostrerà come utilizzare VBA per centrare il testo in una cella sia orizzontalmente che verticalmente.
Possiamo usare il gruppo Allineamento nella barra multifunzione di Excel per centrare il testo sia orizzontalmente che verticalmente in una cella. Se stiamo scrivendo una macro per formattare il testo, possiamo ricreare questa funzionalità utilizzando il codice VBA.
Centra il testo orizzontalmente
Per centrare il testo orizzontalmente in una singola cella, possiamo utilizzare il seguente codice:
123 | Sub CenterText()ActiveCell.HorizontalAlignment = xlCenterFine sottotitolo |
In alternativa, per centrare il testo orizzontalmente in ogni cella di un intervallo di celle selezionato, possiamo utilizzare l'oggetto Selezione e procedere come segue:
123 | Sub CenterText()Selection.HorizontalAlignment = xlCenterFine sottotitolo |
Possiamo anche cambiare l'allineamento a destra oa sinistra usando il xlSinistra e xlDestra costanti.
Per allineare a destra il testo in una cella, possiamo quindi utilizzare il seguente codice:
123 | Sub RightAlignText()ActiveCell.HorizontalAlignment = xlRightFine sottotitolo |
Centra il testo verticalmente
Centrare il testo verticalmente è più o meno lo stesso che orizzontalmente.
123 | Sub CenterTextVertical()ActiveCell.VerticalAlignment = xlCenterFine sottotitolo |
Come centrare il testo verticalmente su una selezione:
123 | Sub CenterTextVerticalmente()Selection.VerticalAlignment = xlCenterFine sottotitolo |
Possiamo anche cambiare il testo in alto o in basso di una cella o selezione usando il xlTop o xlBottom costanti.
123 | Sub TopAlignVerticalmente()ActiveCell.VerticalAlignment = xlTopFine sottotitolo |
Centra il testo orizzontalmente e verticalmente allo stesso tempo
Se vogliamo centrare il testo sia orizzontalmente che verticalmente allo stesso tempo, ci sono un paio di modi in cui possiamo farlo.
1234 | SottocentroEntrambi()ActiveCell.HorizontalAlignment = xlCenterActiveCell.VerticalAlignment = xlCenterFine sottotitolo |
In alternativa, per ridurre la ripetizione del codice, possiamo usare un'istruzione With e End With.
123456 | Sub CenterBoth2()Con selezione.HorizontalAlignment = xlCenter.VerticalAlignment = xlCenterTermina conFine sottotitolo |
Il codice sopra si applicherà a tutte le celle in Excel selezionate in quel momento.
L'uso di With e End With è molto efficace quando abbiamo molte operazioni di formattazione da eseguire all'interno della selezione, come l'unione di celle o la modifica dell'orientamento.
12345678 | Sub MergeAndCenter()Con selezione.HorizontalAlignment = xlCenter.VerticalAlignment = xlBottom.Orientamento = -36.MergeCells = TrueTermina conFine sottotitolo |