Come suddividere una tabella grande in più tabelle più piccole in Excel?
Se si dispone di una grande tabella Excel con più colonne e centinaia o migliaia di righe, potrebbe essere utile suddividerla in tabelle più piccole e gestibili. Ad esempio, si potrebbe aver bisogno di separare i dati in base ai valori di Specifica colonna o dividerli in blocchi composti da un numero fisso di righe. Questo tutorial fornisce metodi passo-passo per eseguire questa operazione in modo efficiente.
| Tabella principale | Dividi la tabella in più tabelle in base al valore di una colonna | Dividi la tabella in più tabelle in base al numero di righe | |
![]() | ![]() | ![]() | ![]() |
Suddividi una tabella grande in più tabelle in base al valore di una colonna con codice VBA
Suddividi una tabella grande in più tabelle in base a un numero specifico di righe con codice VBA
Suddividi una tabella grande in più tabelle in base al valore di una colonna con codice VBA
Per suddividere questa tabella grande in più tabelle in base ai valori di una colonna specifica, il seguente codice VBA ti sarà d’aiuto. Procedi come segue:
1. Tieni premuti i tasti «ALT» + "F11" per aprire la finestra di Microsoft Visual Basic, Applications.
2. Fai clic su «Inserisci» > «Modulo» e incolla il codice seguente nella finestra «Modulo».
Codice VBA: suddividi una tabella grande in più tabelle in base a Colonna chiave:
Sub Splitdatabycol()
'by Extendoffice
Dim lr As Long
Dim ws As Worksheet
Dim vcol, i As Integer
Dim icol As Long
Dim myarr As Variant
Dim title As String
Dim titlerow As Integer
Dim xTRg As Range
Dim xVRg As Range
Dim xWSTRg As Worksheet
On Error Resume Next
Set xTRg = Application.InputBox("Please select the header rows:", "Kutools for Excel", "", Type:=8)
If TypeName(xTRg) = "Nothing" Then Exit Sub
Set xVRg = Application.InputBox("Please select the column you want to split data based on:", "Kutools for Excel", "", Type:=8)
If TypeName(xVRg) = "Nothing" Then Exit Sub
vcol = xVRg.Column
Set ws = xTRg.Worksheet
lr = ws.Cells(ws.Rows.Count, vcol).End(xlUp).Row
title = xTRg.AddressLocal
titlerow = xTRg.Cells(1).Row
icol = ws.Columns.Count
ws.Cells(1, icol) = "Unique"
Application.DisplayAlerts = False
If Not Evaluate("=ISREF('xTRgWs_Sheet!A1')") Then
Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "xTRgWs_Sheet"
Else
Sheets("xTRgWs_Sheet").Delete
Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "xTRgWs_Sheet"
End If
Set xWSTRg = Sheets("xTRgWs_Sheet")
xTRg.Copy
xWSTRg.Paste Destination:=xWSTRg.Range("A1")
ws.Activate
For i = (titlerow + xTRg.Rows.Count) To lr
On Error Resume Next
If ws.Cells(i, vcol) <> "" And Application.WorksheetFunction.Match(ws.Cells(i, vcol), ws.Columns(icol), 0) = 0 Then
ws.Cells(ws.Rows.Count, icol).End(xlUp).Offset(1) = ws.Cells(i, vcol)
End If
Next
myarr = Application.WorksheetFunction.Transpose(ws.Columns(icol).SpecialCells(xlCellTypeConstants))
ws.Columns(icol).Clear
For i = 2 To UBound(myarr)
ws.Range(title).AutoFilter field:=vcol, Criteria1:=myarr(i) & ""
If Not Evaluate("=ISREF('" & myarr(i) & "'!A1)") Then
Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = myarr(i) & ""
Else
Sheets(myarr(i) & "").Move after:=Worksheets(Worksheets.Count)
End If
xWSTRg.Range(title).Copy
Sheets(myarr(i) & "").Paste Destination:=Sheets(myarr(i) & "").Range("A1")
ws.Range("A" & (titlerow + xTRg.Rows.Count) & ":A" & lr).EntireRow.Copy Sheets(myarr(i) & "").Range("A" & (titlerow + xTRg.Rows.Count))
Sheets(myarr(i) & "").Columns.AutoFit
Next
xWSTRg.Delete
ws.AutoFilterMode = False
ws.Activate
Application.DisplayAlerts = True
End Sub
3. Dopo aver incollato il codice, premi il tasto "F5" per eseguirlo. Si aprirà una finestra di dialogo in cui dovrai selezionare la riga di intestazione dai tuoi dati, come mostrato nell’immagine:

4. Quindi, fai clic su «OK» e apparirà un'altra finestra di dialogo: seleziona i dati della colonna in base ai quali desideri suddividere la tabella (vedi immagine).

5. Fai clic su «OK». La tabella grande è stata ora suddivisa in più fogli di lavoro in base ai valori della colonna, con i nuovi fogli posizionati dopo il foglio principale e denominati in base al valore corrispondente della colonna. Vedi immagine:

Suddividi una tabella grande in più tabelle in base a un numero specifico di righe con codice VBA
Se desideri suddividere la tabella in più tabelle in base al numero di righe, il seguente codice VBA ti sarà di grande aiuto.
1. Tieni premuti i tasti «ALT» + "F11" per aprire la finestra di Microsoft Visual Basic, Applications.
2. Fai clic su «Inserisci» > «Modulo» e incolla il codice seguente nella finestra «Modulo».
Codice VBA: suddividi una tabella grande in più tabelle in base al numero di righe:
Sub Splitdatabyrows()
'Updated by Extendoffice
Dim WorkRng As Range
Dim xRow As Range
Dim SplitRow As Integer
Dim xWs As Worksheet
Dim xTRg As Range
Dim xNTRg As Range
Dim xIER
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set xTRg = Application.InputBox("Please select the header row:", xTitleId, "", Type:=8)
If TypeName(xTRg) = "Nothing" Then Exit Sub
Set WorkRng = Application.InputBox("Please select the data range(exclude the header row):", xTitleId, WorkRng.Address, Type:=8)
If TypeName(WorkRng) = "Nothing" Then Exit Sub
SplitRow = Application.InputBox("Split Row Num", xTitleId, Type:=1)
If SplitRow = 0 Then Exit Sub
Set xWs = WorkRng.Parent
Set xRow = WorkRng.Rows(1)
xIER = WorkRng.Rows.Count
xIER = WorkRng.Row + xIER - 1
Application.ScreenUpdating = False
For i = 1 To WorkRng.Rows.Count Step SplitRow
resizeCount = SplitRow
If (xIER - xRow.Row + 1) < SplitRow Then
resizeCount = (xIER - xRow.Row + 1)
End If
xRow.Resize(resizeCount).Copy
Set xWs = Application.Worksheets.Add(after:=Application.Worksheets(Application.Worksheets.Count))
If xIER > (xRow.Row + SplitRow - 1) Then
xWs.Name = xRow.Row & " - " & (xRow.Row + SplitRow - 1)
ElseIf xIER = xRow.Row Then
xWs.Name = xRow.Row
Else
xWs.Name = xRow.Row & " - " & xIER
End If
Application.ActiveSheet.Range("A1").PasteSpecial
Set xNTRg = Application.ActiveSheet.Range("A1")
xTRg.Copy
xNTRg.Insert
Set xRow = xRow.Offset(SplitRow)
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
3. Premi quindi il tasto "F5". Nella finestra di dialogo che appare, seleziona la riga di intestazione, come mostrato nell’immagine:

4. Poi fai clic su «OK» e, nella seconda finestra di dialogo, seleziona l’intervallo dati in base al quale desideri suddividere per numero di righe, vedi immagine:

5. Successivamente, fai nuovamente clic sul pulsante «OK». Nella terza finestra di dialogo, inserisci il numero di righe in base al quale desideri suddividere (vedi immagine):

6. Quindi, fai clic sul pulsante «OK». La tabella principale è stata suddivisa in più fogli di lavoro in base al numero di righe, come illustrato nell’immagine seguente:

Suddividi una tabella grande in più tabelle in base al valore di una colonna o al numero di righe con Kutools per Excel
I codici precedenti potrebbero risultare complessi per la maggior parte degli utenti. Ecco quindi una funzionalità straordinaria: **“Suddividi dati” di Kutools per Excel**. Grazie a questo pratico strumento, puoi suddividere in modo rapido e semplice una tabella grande in più tabelle, in base a una colonna chiave o al numero di righe.
1. Seleziona l’intervallo di dati che desideri suddividere, quindi fai clic su **Kutools Plus** > **Suddividi dati**, come mostrato nell’immagine:

2. Nella finestra di dialogo «Suddividi dati in più schede», imposta le opzioni in base alle tue esigenze:
(1.) Seleziona «Specifica colonna» o «Valore fisso» nella sezione «Base di suddivisione» in base alle tue necessità;
(2.) Specifica i nomi dei fogli creati tramite l’elenco a discesa «Regole». Puoi inoltre aggiungere un «Prefisso» o un «Suffisso» ai nomi dei fogli.

3. Quindi, fai clic sul pulsante «OK». La tabella grande è ora suddivisa in più tabelle più piccole in una nuova cartella di lavoro. Vedi immagini:
| Dividi la tabella in più tabelle in base al valore di una colonna | Dividi la tabella in più tabelle in base al numero di righe |
![]() | ![]() |
Kutools per Excel– Potenzia Excel con oltre 300 strumenti essenziali, rendendo il tuo lavoro più veloce e semplice, e sfrutta le funzionalità basate sull’IA per un’elaborazione dati più intelligente e una maggiore produttività.Scaricalo ora
Altri articoli correlati:
- Dividi una cartella di lavoro in file File di Excel separati in Excel
- Potrebbe essere necessario suddividere una cartella di lavoro di grandi dimensioni in file Excel separati, salvando ciascun foglio come file Excel individuale. Ad esempio, puoi suddividere una cartella di lavoro in più file Excel distinti e assegnare ciascun file a una persona diversa per la gestione. In questo modo, è possibile affidare a utenti specifici la cura di dati mirati, garantendo al contempo la sicurezza delle tue informazioni. Questo articolo illustra i metodi per suddividere una cartella di lavoro di grandi dimensioni in file Excel separati, un foglio alla volta.
- Dividi Nome completo nella prima colonna e in Cognome in Excel
- Supponiamo di avere un elenco di nomi, come mostrato nella prima immagine seguente, disposto in un’unica colonna, e di dover suddividere il contenuto della colonna “Nome completo” nelle colonne “Nome”, “Secondo nome” e “Cognome”, come illustrato nell’immagine successiva. Di seguito sono riportati alcuni metodi efficaci per risolvere questo problema.
- Dividi una colonna lunga in più colonne in Excel
- Se in Excel si ha una colonna con molti dati, visualizzarli può risultare difficoltoso. Tuttavia, suddividendo tale elenco lungo in più colonne, la visualizzazione diventa molto più comoda.
- Dividi parole o numeri in celle separate in Excel
- Se si dispone di un elenco di numeri o parole in un foglio di lavoro e si desidera suddividerne il contenuto in singole lettere su celle diverse, come illustrato nell’immagine seguente, come si può eseguire questa operazione in Excel?
- Dividi un elenco lungo in gruppi uguali in Excel
- Se si ha un lungo elenco di dati da suddividere in più gruppi di dimensioni uguali, come illustrato nell’immagine seguente, in che modo è possibile eseguire questa operazione rapidamente e facilmente in Excel?
Migliori Strumenti per la Produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un’efficienza mai vista prima.Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e Risparmia tempo.Clicca qui per ottenere la funzionalità di cui hai più bisogno...
Office Tab Porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice
- 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 all’interno della stessa finestra, invece che in finestre separate.
- Aumenta la tua produttività del 50 % e risparmia centinaia di clic del mouse ogni giorno!
Tutti i componenti aggiuntivi di Kutools in un unico programma di installazione.
Kutools for Office è la suite che include componenti aggiuntivi per Excel, Word, Outlook e PowerPoint, oltre a Office Tab Pro: la soluzione ideale per i team che lavorano su diverse app di Office.
- Suite completa— componenti aggiuntivi per Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Un unico programma di installazione, una sola licenza— configurazione in pochi minuti (pronto per MSI)
- Funziona meglio insieme— produttività ottimizzata tra le app di Office
- Prova gratuita di 30 giorni con tutte le funzionalità— nessuna registrazione, nessuna carta di credito
- Miglior rapporto qualità-prezzo— risparmia rispetto all’acquisto dei singoli componenti aggiuntivi





