Come adattare automaticamente l'altezza delle righe delle celle unite in Excel?
In Excel, possiamo regolare rapidamente l'altezza della riga per adattarla al contenuto della cella utilizzando il Adatta Altezza riga caratteristica, ma questa funzione ignorerà completamente le celle unite. Vale a dire, non puoi applicare il Adatta Altezza riga funzione per ridimensionare l'altezza della riga delle celle unite, è necessario regolare manualmente l'altezza della riga per le celle unite una per una. In questo articolo, posso introdurre alcuni metodi rapidi per risolvere questo problema.
Adatta automaticamente l'altezza della riga delle celle unite con il codice VBA
Adatta automaticamente l'altezza della riga delle celle unite con il codice VBA
Supponendo di avere un foglio di lavoro con alcune celle unite come mostrato nella seguente schermata, e ora ho bisogno di ridimensionare l'altezza della riga della cella per visualizzare l'intero contenuto, il codice VBA sottostante potrebbe aiutarti ad adattare automaticamente l'altezza della riga di più celle unite, per favore fallo come segue:
1. Tieni premuto il ALT + F11 chiavi e apre il file Finestra di Microsoft Visual Basic, Applications Edition.
2. Clic inserire > Modulie incolla il codice seguente nel file Finestra del modulo.
Codice VBA: adatta automaticamente l'altezza della riga di più celle uniteOption Explicit
Public Sub AutoFitAll()
Call AutoFitMergedCells(Range("a1:b2"))
Call AutoFitMergedCells(Range("c4:d6"))
Call AutoFitMergedCells(Range("e1:e3"))
End Sub
Public Sub AutoFitMergedCells(oRange As Range)
Dim tHeight As Integer
Dim iPtr As Integer
Dim oldWidth As Single
Dim oldZZWidth As Single
Dim newWidth As Single
Dim newHeight As Single
With Sheets("Sheet4")
oldWidth = 0
For iPtr = 1 To oRange.Columns.Count
oldWidth = oldWidth + .Cells(1, oRange.Column + iPtr - 1).ColumnWidth
Next iPtr
oldWidth = .Cells(1, oRange.Column).ColumnWidth + .Cells(1, oRange.Column + 1).ColumnWidth
oRange.MergeCells = False
newWidth = Len(.Cells(oRange.Row, oRange.Column).Value)
oldZZWidth = .Range("ZZ1").ColumnWidth
.Range("ZZ1") = Left(.Cells(oRange.Row, oRange.Column).Value, newWidth)
.Range("ZZ1").WrapText = True
.Columns("ZZ").ColumnWidth = oldWidth
.Rows("1").EntireRow.AutoFit
newHeight = .Rows("1").RowHeight / oRange.Rows.Count
.Rows(CStr(oRange.Row) & ":" & CStr(oRange.Row + oRange.Rows.Count - 1)).RowHeight = newHeight
oRange.MergeCells = True
oRange.WrapText = True
.Range("ZZ1").ClearContents
.Range("ZZ1").ColumnWidth = oldZZWidth
End With
End Sub
Note:
(1.) Nel codice sopra, puoi aggiungere nuovi intervalli semplicemente copiarli Chiama AutoFitMergedCells (Range ("a1: b2")) script quante volte vuoi e modifica gli intervalli di celle unite in base alle tue esigenze.
(2.) E dovresti cambiare il nome del foglio di lavoro corrente Sheet4 al nome del foglio utilizzato.
3. Quindi premere F5 chiave per eseguire questo codice e ora puoi vedere che tutte le celle unite sono state adattate automaticamente al contenuto delle celle, vedi screenshot:
Articolo correlato:
Come adattare automaticamente la larghezza della colonna in Excel?
I migliori strumenti per la produttività in ufficio
Potenzia le tue competenze di Excel con Kutools per Excel e sperimenta l'efficienza come mai prima d'ora. Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Fai clic qui per ottenere la funzionalità di cui hai più bisogno...
Office Tab porta l'interfaccia a schede in Office e semplifica notevolmente il tuo lavoro
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
- Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!