Come utilizzare wrap text ovunque tramite vba?
In VBA, esiste una proprietà chiamata “WrapText” a cui è possibile accedere per applicare il testo di disposizione a una cella o a un intervallo di celle. Devi scrivere il codice per abilitarlo o disabilitarlo. È una proprietà di lettura e scrittura, quindi puoi applicarla oppure puoi anche ottenerla se viene applicata su una cella.
In questo tutorial, esamineremo diversi modi per applicare il testo a capo utilizzando il codice VBA.
Avvolgi il testo in una cella utilizzando VBA
Utilizzare i seguenti passaggi per applicare il testo a capo utilizzando il codice VBA.
- Definisci la cella in cui desideri applicare il testo a capo utilizzando la proprietà range .
- Digita un punto per visualizzare l’elenco delle proprietà e dei metodi per quella cella.
- Seleziona la proprietà “WrapText” dall’elenco.
- Immettere il segno uguale “=” e digitare TRUE per abilitare il ritorno a capo.
Sub vba_wrap_text() Range("A1").WrapText = True End Sub
È inoltre possibile specificare una cella nel modo seguente.
Cells(1, 1).WrapText = True
Avvolgi il testo in una riga di celle
E se desideri applicare il testo di ritorno a capo a un intero intervallo, devi specificare l’intervallo anziché una singola cella.
Range("A1:A5").WrapText = True
Puoi anche applicarlo all’intervallo utilizzato (selezione del foglio di lavoro in cui hai inserito i dati) utilizzando la proprietà “UsedRange”.
Worksheets("Sheet1").UsedRange.WrapText = True ActiveSheet.UsedRange.WrapText = True
Nella prima riga del codice precedente, hai specificato il foglio di lavoro e quindi la “UsedProperty” per racchiudere il testo. Nella seconda riga hai l’area utilizzata del foglio attivo . Ma entrambe le linee funzionano allo stesso modo.
Ecco alcuni altri esempi che dovresti sapere:
- Celle non continue
- Tutta la linea
- Tutta la colonna
- Intervallo denominato
Range("A1:A10,C1:C10").WrapText = True Range("A:A").WrapText = True Range("1:1").WrapText = True Range("myRange").WrapText = True
Disponi il testo in tutto il foglio di lavoro
Per fare riferimento all’intero foglio di lavoro, è necessario utilizzare la proprietà Cells come nel codice seguente.
Cells.WrapText = True Worksheets("Sheet1").Cells.WrapText = True
La prima riga di codice si riferisce al foglio attivo e la seconda riga si riferisce al foglio di lavoro “Foglio1”. È inoltre possibile utilizzare un ciclo utilizzando FOR EACH (For Next) per scorrere tutti i fogli di lavoro nella cartella di lavoro e applicare il testo a capo a tutte le celle.
Dim ws As Worksheet For Each ws In ActiveWorkbook.Worksheets Cells.WrapText = True Next ws
Nel codice sopra, hai “ws” come variabile , quindi For Each Loop scorre tutti i fogli di lavoro nella cartella di lavoro e si applica per racchiudere il testo dell’intero foglio di lavoro utilizzando Celle.
Disabilita WrapText
Come hai visto devi abilitare la proprietà WrapText e allo stesso modo puoi disabilitarla usando add dichiarando FALSE.
Range("A1").WrapText = False
Nota: c’è una cosa che devi capire se hai un valore in una cella e la larghezza della cella è sufficiente per memorizzare quel valore, anche se applichi testo alla riga Excel non sposterà il contenuto nella riga successiva .