Come unire automaticamente le celle vuote sopra/sinistra in Excel?
In questo articolo, parlerò di come unire automaticamente le celle vuote sopra o a sinistra, come mostrato nello screenshot sottostante. In realtà, non esiste alcuna funzionalità integrata che possa gestire questo compito, ma i codici macro possono farlo.
Unisci spazi vuoti sopra | ||
![]() | ![]() | ![]() |
Unisci spazi vuoti a sinistra | ||
![]() | ![]() | ![]() |
Unisci celle vuote sopra basandoti su una colonna
Unisci celle vuote sopra (funziona solo per una singola colonna)
Unisci celle vuote sopra basandoti su una colonna
Supponiamo che ci sia un intervallo di dati in tre colonne e ora desideri unire i dati sopra basandoti sulla colonna C.
1. Premi Alt + F11per abilitare la finestra Microsoft Visual Basic for Applications e fai clic su Inserisci > Modulo. Vedi screenshot:
2. Quindi incolla il seguente codice nello script vuoto. Vedi screenshot:
VBA: Unisci spazi vuoti sopra basandoti sulla colonna successiva
Sub MergeCells()
'UpdatebyExtendoffice2017025
Dim xRg As Range
Dim xCell As Range
Dim xAddress As String
On Error Resume Next
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Select a range:", "KuTools For Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
For Each xCell In xRg
If xCell.Value = "" Then
Range(xCell, xCell.Offset(-1, 0)).Merge
End If
Next
End Sub
3. Premi F5 per eseguire il codice, quindi apparirà una finestra di dialogo che ti ricorda di selezionare un intervallo su cui lavorare. Vedi screenshot:
4. Fai clic su OK, quindi le celle vuote saranno unite sopra. Vedi screenshot:

Sblocca la Magia di Excel con Kutools AI
- Esecuzione Intelligente: Esegui operazioni sulle celle, analizza i dati e crea grafici — tutto guidato da semplici comandi.
- Formule Personalizzate: Genera formule su misura per ottimizzare i tuoi flussi di lavoro.
- Codifica VBA: Scrivi e implementa codice VBA senza sforzo.
- Interpretazione delle Formule: Comprendi facilmente formule complesse.
- Traduzione del Testo: Superare le barriere linguistiche all'interno dei tuoi fogli di calcolo.
Unisci celle vuote sopra (funziona solo per una singola colonna)
Ecco un codice macro che può unire le celle vuote sopra nella colonna specificata.
1. Premi Alt + F11 per abilitare la finestra Microsoft Visual Basic for Applications e fai clic su Inserisci > Modulo. Vedi screenshot:
2. Incolla il seguente codice nello script. Vedi screenshot:
VBA: Unisci celle vuote sopra
Sub mergeblankswithabove()
'UpdatebyExtendoffice20171025
Dim I As Long
Dim xRow As Long
Dim xRg As Range
Dim xCell As Range
Dim xAddress As String
On Error Resume Next
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Select a range (single column):", "KuTools For Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
If xRg.Columns.Count > 1 Then
MsgBox "Only work for single column", , "KuTools For Excel"
Exit Sub
End If
xRow = xRg.Rows.Count
Set xRg = xRg(xRow)
For I = xRow To 1 Step -1
Set xCell = xRg.Offset(I - xRow, 0)
Debug.Print xCell.Address
If xCell.Value = "" Then Range(xCell, xCell.Offset(-1, 0)).Merge
Next
End Sub
3. Premi F5 per eseguire il codice, e apparirà una finestra di dialogo per selezionare un intervallo di colonne. Vedi screenshot:
4. Fai clic su OK. Le celle vuote nell'intervallo selezionato sono state unite sopra.
![]() | ![]() | ![]() |
Unisci celle vuote a sinistra
Se desideri unire le celle vuote a sinistra, il seguente codice può aiutarti.
1. Premi Alt + F11 per abilitare la finestra Microsoft Visual Basic for Applications, e fai clic su Inserisci > Modulo. Vedi screenshot:
2. Quindi incolla il seguente codice nello script vuoto. Vedi screenshot:
VBA: Unisci spazi vuoti a sinistra
Sub mergeblankswithleft()
'UpdatebyExtendoffice20171025
Dim xRg As Range
Dim xCell As Range
Dim xAddress As String
On Error Resume Next
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Select a range:", "KuTools For Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
For Each xCell In xRg
If xCell.Value = "" Then Range(xCell, xCell.Offset(0, -1)).Merge
Next
End Sub
3. Premi F5 per eseguire il codice, e apparirà una finestra di dialogo per selezionare un intervallo. Vedi screenshot:
4. Fai clic su OK. Le celle vuote sono state unite a sinistra.
Unisci spazi vuoti a sinistra | ||
![]() | ![]() | ![]() |
I migliori strumenti per la produttività in Office
Migliora le tue competenze su Excel con Kutools per Excel e sperimenta un nuovo livello di efficienza. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...
Office Tab porta l’interfaccia a schede su Office, rendendo il tuo lavoro molto più semplice
- Abilita la modifica a schede e la lettura in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, invece che in nuove finestre.
- Aumenta la tua produttività del50% e ti fa risparmiare centinaia di clic ogni giorno!