Como dividir dados em várias planilhas com base em colunas no Excel?
Supondo que você tenha uma planilha com enormes linhas de dados, e agora, você precisa dividir os dados em várias planilhas com base no Nome coluna (veja a imagem a seguir), e os nomes são inseridos aleatoriamente. Talvez você possa classificá-los primeiro e, em seguida, copiá-los e colá-los um por um em outras novas planilhas. Mas isso exigirá sua paciência para copiar e colar repetidamente. Hoje, falarei sobre alguns truques rápidos para resolver essa tarefa.
Divida os dados em várias planilhas com base na coluna com código VBA
Divida os dados em várias planilhas com base na coluna com o Kutools para Excel
Divida os dados em várias planilhas com base na coluna com código VBA
Se você deseja dividir os dados com base no valor da coluna de forma rápida e automática, o seguinte código VBA é uma boa escolha. Faça o seguinte:
1. Segure o ALT + F11 chaves para abrir o Microsoft Visual Basic para Aplicações janela.
2. Clique inserção > Móduloe cole o código a seguir na janela do módulo.
Sub Splitdatabycol()
'updateby 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
Dim xWS 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
Set xWS = Sheets.Add(after:=Worksheets(Worksheets.Count))
xWS.Name = myarr(i) & ""
Else
xWS.Move after:=Worksheets(Worksheets.Count)
End If
xWSTRg.Range(title).Copy
xWS.Paste Destination:=xWS.Range("A1")
ws.Range("A" & (titlerow + xTRg.Rows.Count) & ":A" & lr).EntireRow.Copy xWS.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. Então aperte F5 para executar o código e uma caixa de prompt é exibida para lembrá-lo de selecionar a linha de cabeçalho, consulte a captura de tela:
4. E então, clique OK botão, e na segunda caixa de prompt, selecione os dados da coluna que você deseja dividir com base, consulte a captura de tela:
5. Então clique OK, e todos os dados da planilha ativa são divididos em várias planilhas pelo valor da coluna. E as planilhas divididas são nomeadas com os nomes das células divididas. Veja a imagem:
Nota: As planilhas divididas são colocadas no final da pasta de trabalho onde a planilha principal está.
Divida os dados em várias planilhas com base na coluna com o Kutools para Excel
Como um iniciante do Excel, esse longo código VBA é um tanto difícil para nós, e a maioria de nós nem sabe como modificar o código conforme nossa necessidade. Aqui, vou apresentar a você uma ferramenta multifuncional -Kutools for Excel, as TIC Dividir Dados utilitário não só pode ajudá-lo a dividir dados em várias planilhas com base na coluna, mas também pode dividir dados por contagem de linhas.
NOTAPara aplicar isso Dividir Dados, em primeiro lugar, você deve baixar o Kutools for Excele, em seguida, aplique o recurso de forma rápida e fácil.
Depois de instalar Kutools for Excel, por favor, faça o seguinte:
1. Selecione o intervalo de dados que deseja dividir.
2. Clique Kutools Plus > Planilha > Dividir Dados, veja a captura de tela:
3. No Divida os dados em várias planilhas caixa de diálogo, você precisa:
1). Selecione Coluna específica opção no Dividir com base em seção e escolha o valor da coluna que você deseja dividir os dados com base na lista suspensa. (Se os seus dados tiverem cabeçalhos e você quiser inseri-los em cada nova planilha dividida, verifique Meus dados têm cabeçalhos opção.)
2). Em seguida, você pode especificar os nomes da planilha dividida, no Nome da nova planilha seção, especifique as regras de nomes de planilha do Regras lista suspensa, você pode adicionar o Prefixo or Sufixo para os nomes das folhas também.
3). Clique no OK botão. Veja a imagem:
4. Agora os dados são divididos em várias planilhas em uma nova pasta de trabalho.
Clique para baixar Kutools para Excel e avaliação gratuita agora!
Divida os dados em várias planilhas com base na coluna com o Kutools para Excel
Kutools for Excel inclui mais de 300 ferramentas úteis do Excel. Gratuito para testar sem limitação em 30 dias. Baixe o teste gratuito agora!
Artigo relacionado:
Como dividir dados em várias planilhas por contagem de linhas?
As melhores ferramentas de produtividade para escritório
O Kutools for Excel resolve a maioria dos seus problemas e aumenta sua produtividade em 80%
- armadilha para peixes: Insira rapidamente fórmulas complexas, gráficos e qualquer coisa que você tenha usado antes; Criptografar células com senha; Criar lista de discussão e enviar emails ...
- Barra Super Fórmula (edite facilmente várias linhas de texto e fórmula); Layout de leitura (ler e editar facilmente um grande número de células); Colar na faixa filtrada...
- Mesclar células / linhas / colunas sem perder dados; Dividir o conteúdo das células; Combinar linhas / colunas duplicadas... Evite células duplicadas; Comparar intervalos...
- Selecione Duplicado ou Único Linhas; Selecione linhas em branco (todas as células estão vazias); Super Find e Fuzzy Find em muitos livros; Seleção aleatória ...
- Cópia exata Várias células sem alterar a referência da fórmula; Criação automática de referências para várias folhas; Inserir marcadores, Caixas de seleção e mais ...
- Extrair Texto, Adicionar texto, remover por posição, Remover Espaço; Criar e imprimir subtotais de paginação; Converter entre conteúdo de células e comentários...
- Super Filtro (salvar e aplicar esquemas de filtro a outras planilhas); Classificação Avançada por mês / semana / dia, frequência e mais; Filtro Especial por negrito, itálico ...
- Combine pastas de trabalho e planilhas; Mesclar tabelas com base em colunas-chave; Divida os dados em várias folhas; Conversão em lote de xls, xlsx e PDF...
- Mais de 300 recursos poderosos. Suporta Office / Excel 2007-2021 e 365. Suporta todos os idiomas. Fácil implantação em sua empresa ou organização. Recursos completos de avaliação gratuita de 30 dias. Garantia de devolução do dinheiro em 60 dias.

Guia do Office traz interface com guias para o Office e torna seu trabalho muito mais fácil
- Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
- Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!































