KutoolsforOffice — Uma solução, cinco ferramentas poderosas.Fazer mais com menos esforço.

Como dividir uma tabela grande em várias tabelas pequenas no Excel?

AutorXiaoyang Data de Modificação

Se tiver uma tabela grande no Excel com várias colunas e centenas ou milhares de linhas, poderá querer dividi-la em tabelas mais pequenas e fáceis de gerir. Por exemplo, pode precisar de separar os dados com base nos valores de uma coluna específica ou dividi-los em blocos com um número fixo de linhas. Este tutorial apresenta métodos passo a passo para realizar esta tarefa de forma eficiente.

Tabela Principal  Dividir tabela em várias tabelas por valor de colunaDividir tabela em várias tabelas por número de linhas
Uma captura de ecrã de uma tabela grande no Excel antes da divisãoSetaUma captura de ecrã de uma tabela do Excel dividida por valores de colunaUma captura de ecrã de uma tabela do Excel dividida por número de linhas

Dividir uma tabela grande em várias tabelas com base no valor de uma coluna utilizando código VBA

Dividir uma tabela grande em várias tabelas com base num número específico de linhas utilizando código VBA

Dividir uma tabela grande em várias tabelas com base no valor de uma coluna ou no número de linhas com Kutools para Excel


Dividir uma tabela grande em várias tabelas com base no valor de uma coluna utilizando código VBA

Para dividir esta tabela grande em várias tabelas com base num valor especificado na coluna, o seguinte código VBA pode ajudá-lo. Siga estes passos:

1. Prima simultaneamente as teclas «ALT» + "F11" para abrir a janela do Microsoft Visual Basic para Aplicações.

2. Clique em «Inserir» > «Módulo» e cole o código seguinte na janela do Módulo.

Código VBA: Dividir uma tabela grande em várias tabelas por Coluna Chave:

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. Após colar o código, prima a tecla "F5" para executá-lo. Aparecerá uma caixa de diálogo — selecione a linha de cabeçalho dos seus dados, conforme ilustrado:

Uma captura de ecrã que mostra como selecionar a linha de cabeçalho para dividir tabelas

4. Em seguida, clique em «OK» e surgirá outra caixa de diálogo. Por favor, selecione os dados da coluna com base nos quais pretende dividir a tabela, conforme ilustrado:

Uma captura de ecrã que mostra como selecionar a coluna para dividir tabelas por valores

5. Clique em «OK». A tabela grande foi agora dividida em várias folhas de cálculo com base nos valores da coluna, sendo as novas folhas inseridas após a folha principal e nomeadas de acordo com o valor correspondente na coluna. Veja a imagem:

Uma captura de ecrã que mostra várias folhas de cálculo criadas após a divisão por valores de coluna


Dividir uma tabela grande em várias tabelas com base num número específico de linhas utilizando código VBA

Se precisar de dividir a tabela em várias tabelas com base no número de linhas, o código VBA seguinte pode ajudá-lo.

1. Prima simultaneamente as teclas «ALT» + "F11" para abrir a janela do Microsoft Visual Basic para Aplicações.

2. Clique em «Inserir» > «Módulo» e cole o código seguinte na janela do Módulo.

Código VBA: Dividir uma tabela grande em várias tabelas por número de linhas:

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. Em seguida, prima a tecla "F5". Na caixa de diálogo que surge, selecione a linha de cabeçalho, conforme ilustrado:

Uma captura de ecrã que mostra como selecionar a linha de cabeçalho para dividir por número de linhas

4. Depois, clique em «OK» e, na segunda caixa de diálogo, selecione o Intervalo de Dados pelo qual pretende dividir com base na contagem de linhas, conforme ilustrado:

Uma captura de ecrã que mostra como selecionar o intervalo de dados para dividir por linhas

5. Em seguida, continue a clicar no botão «OK». Na terceira caixa de diálogo, introduza o número de linhas pelo qual pretende dividir, conforme ilustrado:

Uma captura de ecrã que mostra como introduzir o número de linhas para divisão no Excel

6. Depois, clique no botão «OK». A tabela principal foi dividida em várias folhas de cálculo com base no número de linhas, conforme ilustrado na imagem seguinte:

Uma captura de ecrã de várias folhas de cálculo criadas após a divisão por número de linhas


Dividir uma tabela grande em várias tabelas com base no valor de uma coluna ou no número de linhas com Kutools para Excel

Os códigos anteriores podem revelar-se desafiantes para a maioria dos utilizadores. Apresentamos-lhe, por isso, uma funcionalidade extraordinária: o “Dividir Dados” do Kutools para Excel. Com esta ferramenta, pode dividir rápida e facilmente uma tabela grande em várias tabelas — quer por Coluna Chave, quer por número de linhas.

Kutools para Exceloferece mais de 300 funcionalidades avançadas para simplificar tarefas complexas, potenciando a criatividade e a eficiência.Integrado com capacidades de IA, o Kutools automatiza tarefas com precisão, tornando a gestão de dados descomplicada.Informações detalhadas de Kutools para Excel...         Teste gratuito...

1. Selecione o intervalo de dados que pretende dividir e, em seguida, clique em «KUTOOLS PLUS» > «Dividir Dados», conforme ilustrado:

2. Na caixa de diálogo «Dividir Dados em Múltiplas Planilhas», defina as opções de acordo com as suas necessidades:

(1.) Selecione «Especificar coluna» ou «Valor fixo» na secção «Critério de Divisão», conforme necessário;

(2.) Especifique o nome das planilhas criadas na lista pendente «Regras»; pode ainda adicionar um «Prefixo» ou um «Sufixo» aos nomes das folhas.

Uma captura de ecrã que mostra as definições para dividir dados utilizando o Kutools

3. Em seguida, clique no botão «Ok» e, nesse momento, a tabela grande será dividida em várias tabelas pequenas num novo livro. Veja as imagens:

Dividir tabela em várias tabelas por valor de colunaDividir tabela em várias tabelas por número de linhas
Uma captura de ecrã de uma tabela do Excel dividida em folhas de cálculo por valores de coluna utilizando o KutoolsUma captura de ecrã de uma tabela do Excel dividida em folhas de cálculo por número de linhas utilizando o Kutools

Kutools para Excel– Potencie o Excel com mais de 300 ferramentas essenciais, tornando o seu trabalho mais rápido e fácil, e aproveite as funcionalidades de IA para um processamento de dados mais inteligente e uma maior produtividade.Obtenha Já


Mais artigos relacionados:

  • Dividir um Livro de Trabalho em ficheiros Arquivos do Excel separados no Excel
  • Poderá precisar de dividir um livro de trabalho grande em ficheiros do Excel separados, guardando cada folha de cálculo como um ficheiro Excel individual. Por exemplo, pode dividir um livro de trabalho em vários ficheiros do Excel e entregar cada um a uma pessoa diferente para tratamento. Assim, consegue atribuir o processamento de dados específicos a determinadas pessoas e manter as suas informações seguras. Este artigo mostra-lhe como dividir um livro de trabalho grande em ficheiros do Excel separados, com base em cada folha de cálculo.
  • Dividir Nome Completo na Primeira e na Sobrenome no Excel
  • Imagine que tem uma lista de nomes, como mostra a primeira imagem abaixo, numa única coluna, e precisa separar o nome completo nas colunas Primeiro Nome, Nome do Meio e Sobrenome, conforme ilustrado na imagem seguinte. Eis alguns métodos práticos para resolver este desafio.
  • Dividir Palavra ou Número em Células Separadas no Excel
  • Se tiver uma lista de números ou palavras numa folha de cálculo e precisar de dividir o conteúdo das células em letras individuais por células separadas, tal como ilustrado na imagem seguinte, como pode executar esta tarefa no Excel?

As Melhores Ferramentas de Produtividade para o Office

🤖KUTOOLS AI Assistente: Revolucione o Análise de Dados com base em:Execução Inteligente   |  Gerar Código|  Criar fórmulas personalizadas  |  Analisar Dados e Gerar Gráficos|  Invocar Funções Aprimoradas
Funcionalidades Populares:Localizar, Destacar ou Marcar Duplicatas   |  Excluir linhas em branco   |  Combinar Colunas ou Células sem Perder Dados   |   Arredondamento sem usar fórmula...
Super PROC:VLookup com Múltiplos Critérios  |  VLookup com Múltiplos Valores  |   VLookup em Múltiplas Folhas   |   Correspondência Fuzzy....
Lista Suspensa Avançada:Criar Rapidamente Lista de Seleção   |  Lista de Seleção Dependente   |  Lista de Seleção com Múltipla Escolha....
Gestor de Colunas:Adicionar um Número Específico de Colunas|Mover Colunas|Alternar Estado de Visibilidade de Colunas Ocultas|Comparar Intervalos e Colunas...
Funcionalidades em Destaque:Grade de foco   |  Visualização de Design   |Barra de fórmulas aprimorada   | Gestor de Pastas de Trabalho e Folhas   |  Biblioteca de Recursos(Texto Automático)|  Seleção de Data   |  Consolidar Planilhas  |  Encriptar/Descriptografar Células   | Enviar Emails por Lista   |  Super Filtro   |   Filtro Especial(Filtrar Células com Fonte em Negrito/itálico/rasurado...) ...
Principais Conjuntos de Ferramentas 15:12 Ferramentasde Texto(Adicionar Texto,Excluir Caracteres Específicos, ...)|   50+Tiposde Gráfico(Gráfico de Gantt, ...)|   40+ Fórmulas Práticas(Calcular a idade com base na data de nascimento, ...)|   19 Ferramentasde Inserção(Inserir QR Code,Inserir Imagem a Partir do Caminho, ...)|   12 Ferramentasde Conversão(Converter em Palavras,Conversão de moeda, ...)|   7 Ferramentasde Mesclar e Dividir(Mesclar Linhas Avançado,Dividir Células, ...)|... e muito mais
Utilize o Kutools na sua língua preferida – suporta inglês, espanhol, alemão, francês, chinês e mais 40+ idiomas!

Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...


Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil

  • Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
  • Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!

Todos os suplementos Kutools — num único instalador.

Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.

ExcelWordOutlookTabsPowerPoint
  • Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
  • Um instalador, uma licença— configuração em minutos (pronto para MSI)
  • Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
  • Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
  • Melhor relação qualidade-preço— poupe face à compra individual dos suplementos