Questo tutorial mostrerà come formattare le celle usando VBA.
Formattare le celle
Ci sono molte proprietà che possono essere impostate per un (intervallo di) celle come questa:
1234567891011 | Sub SetCellFormat()Con fogli di lavoro ("Foglio1"). Intervallo ("B5: C7").HorizontalAlignment = xlHAlignDistributed.AddIndent = True.Font.FontStyle = "Corsivo".NumberFormat = "Generale".Interno.Colore = RGB(128, 100, 250)Termina conFine sottotitolo |
Vediamoli in ordine alfabetico:
Aggiungi rientro
Impostando il valore di questa proprietà su True il testo verrà automaticamente rientrato quando l'allineamento del testo nella cella è impostato, orizzontalmente o verticalmente, su una distribuzione uguale (vedi HorizontalAlignment e VerticalAlignment).
12345 | Con fogli di lavoro ("Foglio1"). Intervallo ("A1").Orientamento = xlVerticale.VerticalAlignment = xlVAlignDistributed.AddIndent = TrueTermina con |
frontiere
Puoi impostare il formato del bordo di una cella. Vedi qui per maggiori informazioni sui confini.
Ad esempio, puoi impostare una linea tratteggiata rossa attorno alla cella B2 sul foglio 1 in questo modo:
1 | Fogli di lavoro("Foglio1").Intervallo("B2").BorderAround LineStyle:=xlDash, ColorIndex:=3 |
Font
Puoi regolare il formato del carattere della cella impostando il nome del carattere, lo stile, la dimensione, il colore, aggiungendo sottolineature e/o effetti (barrato, sub- o apice). Vedi qui per ulteriori informazioni sui caratteri delle celle.
Ecco alcuni esempi:
12345 | Con intervallo ("A1: C5"). Carattere.Nome = "Secolo".FontStyle = "grassetto".Barrato = VeroTermina con |
FormulaNascosto
Questa proprietà restituisce o imposta un valore variante che indica se la formula verrà nascosta quando il foglio di lavoro è protetto. Per esempio:
1 | Fogli di lavoro("Foglio1").Intervallo("A1:B1").FormulaHidden = True |
Allineamento orizzontale
Questa proprietà del formato della cella della proprietà restituisce o imposta un valore variante che rappresenta l'allineamento orizzontale per l'oggetto specificato. Le costanti restituite o impostate possono essere: xlGeneral, xlCenter, xlDistributed, xlJustify, xlLeft, xlRight, xlFill, xlCenterAcrossSelection. Per esempio:
1 | Fogli di lavoro ("Foglio1"). Intervallo ("D3"). Allineamento orizzontale = xlDestra |
RientroLivello
Restituisce o imposta un valore intero compreso tra 0 e 15 che rappresenta il livello di rientro per la cella o l'intervallo.
1 | Fogli di lavoro("Foglio1").Intervallo("A1").IndentLevel = 7 |
Interni
Puoi impostare o ottenere informazioni restituite sull'interno della cella: Color, ColorIndex, Pattern, PatternColor, PatternColorIndex, PatternThemeColor, PatternTintAndShade, ThemeColor, TintAndShade, in questo modo:
123 | If Not Range("A1").Interior.ThemeColor = ThemeColorLight2 ThenRange("A1").Interior.Pattern = xlPatternUpFinisci se |
bloccato
Questa proprietà restituisce True se la cella o l'intervallo è bloccato, False se l'oggetto può essere modificato quando il foglio è protetto o Null se l'intervallo specificato contiene sia celle bloccate che sbloccate. Può essere utilizzato anche per bloccare o sbloccare le celle.
Questo esempio sblocca le celle A1:B2 su Foglio1 in modo che possano essere modificate quando il foglio è protetto.
12 | Fogli di lavoro("Foglio1").Intervallo("A1:B2").Bloccato = FalsoFogli di lavoro("Foglio1").Proteggi |
Unire le celle
Imposta questa proprietà su True se devi unire un intervallo. Il suo valore diventa True se un intervallo specificato contiene celle unite. Ad esempio, se devi unire l'intervallo C5: D7, puoi utilizzare questo codice:
1 | Fogli di lavoro ("Foglio1"). Intervallo ("C5: D7"). MergeCells = True |
NumeroFormato
È possibile impostare il formato del numero all'interno delle celle su Generale, Numero, Valuta, Contabilità, Data, Ora, Percentuale, Frazione, Scientifico, Testo, Speciale e Personalizzato.
Ecco gli esempi di formati numerici scientifici e percentuali:
12 | Intervallo("A1").NumberFormat = "0.00E+00"Range("B1").NumberFormat = "0.00%" |
NumeroFormatoLocale
Questa proprietà restituisce o imposta un valore variant che rappresenta il codice di formato per l'oggetto come stringa nella lingua dell'utente.
Orientamento
È possibile impostare (o ottenere la restituzione) l'orientamento del testo all'interno delle celle tramite questa proprietà. Il suo valore può essere una di queste costanti: xlDownward, xlHorizontal, xlUpward, xlVertical o un valore intero compreso tra -90 e 90 gradi.
1 | Fogli di lavoro ("Foglio1"). Intervallo ("A1"). Orientamento = -60 |
Genitore
Questa è una proprietà di sola lettura che restituisce l'oggetto padre di un oggetto specificato.
Rimpicciolirsi per starci dentro
Questa proprietà restituisce o imposta un valore variante che indica se il testo si riduce automaticamente per adattarsi alla larghezza della colonna disponibile.
1 | Fogli di lavoro("Foglio1").Intervallo("A1").RiduciToFit = True |
Allineamento verticale
Questa proprietà del formato della cella della proprietà restituisce o imposta un valore variante che rappresenta l'allineamento verticale per l'oggetto specificato. Le costanti restituite o impostate possono essere: xlCenter, xlDistributed, xlJustify, xlBottom, xlTop. Per esempio:
1 | Fogli di lavoro ("Foglio1"). Intervallo ("A1"). Allineamento verticale = xlTop |
Avvolgere il testo
Questa proprietà restituisce True se il testo è inserito in tutte le celle all'interno dell'intervallo specificato, False se il testo non è inserito in tutte le celle all'interno dell'intervallo specificato o Null se l'intervallo specificato contiene alcune celle che vanno a capo e altre celle che non lo fanno.
Ad esempio, se hai questo intervallo di celle:
questo codice di seguito restituirà Null nella finestra immediata:
1 | ?Fogli di lavoro("Foglio1").Intervallo("A1:B1").WrapText |