Como criar novas planilhas para cada linha no Excel?
Em tarefas de gerenciamento de dados ou relatórios, você pode, às vezes, precisar separar cada registro de uma tabela em sua própria planilha. Por exemplo, se você mantém uma lista de detalhes de estudantes no Excel, onde cada linha representa informações de um estudante diferente, pode desejar gerar uma planilha separada para cada estudante, cada uma contendo seus dados específicos. Alternativamente, você pode simplesmente querer dividir cada linha — independentemente do seu conteúdo — para que cada uma seja colocada em uma nova planilha individual. Criar e copiar dados manualmente para novas planilhas pode ser demorado e propenso a erros, especialmente se você estiver trabalhando com um grande conjunto de dados. Automatizar esse processo economiza tempo significativo e reduz o risco de erros. Este guia apresenta duas soluções práticas para criar novas planilhas para cada linha no Excel e explica os prós e contras de cada método para ajudá-lo a escolher a melhor abordagem para o seu cenário.
Criar novas planilhas para cada linha com código VBA
Criar novas planilhas para cada linha com a ferramenta Dividir Dados do Kutools para Excel
Criar novas planilhas para cada linha com código VBA
Usar VBA (Visual Basic for Applications) é uma maneira eficaz de automatizar tarefas no Excel que, de outra forma, seriam tediosas e repetitivas. Com o VBA, você pode criar rapidamente novas planilhas para cada linha em seus dados, agrupando linhas com base em uma coluna (como o nome de um estudante), ou criando uma planilha para cada linha, independentemente do conteúdo. Essa abordagem é ideal para usuários familiarizados com o editor do VBA e que preferem uma solução altamente personalizável. No entanto, exige a edição e execução de código, portanto, pode não ser adequado para usuários sem experiência em VBA ou que não tenham permissão para executar macros em seu ambiente.
1. Pressione "Alt" + "F11" para abrir a janela Microsoft Visual Basic for Applications, que permite acessar o código VBA para automatizar operações no Excel.
2. Na janela Microsoft Visual Basic for Applications, clique em Inserir > Módulo para adicionar um novo módulo de código. Em seguida, copie e cole o seguinte código na janela Módulo.
Código VBA: criar nova planilha para cada linha com base na coluna
Sub parse_data()
'Update by Extendoffice 2018/3/2
Dim xRCount As Long
Dim xSht As Worksheet
Dim xNSht As Worksheet
Dim I As Long
Dim xTRrow As Integer
Dim xCol As New Collection
Dim xTitle As String
Dim xSUpdate As Boolean
Set xSht = ActiveSheet
On Error Resume Next
xRCount = xSht.Cells(xSht.Rows.Count, 1).End(xlUp).Row
xTitle = "A1:C1"
xTRrow = xSht.Range(xTitle).Cells(1).Row
For I = 2 To xRCount
Call xCol.Add(xSht.Cells(I, 1).Text, xSht.Cells(I, 1).Text)
Next
xSUpdate = Application.ScreenUpdating
Application.ScreenUpdating = False
For I = 1 To xCol.Count
Call xSht.Range(xTitle).AutoFilter(1, CStr(xCol.Item(I)))
Set xNSht = Nothing
Set xNSht = Worksheets(CStr(xCol.Item(I)))
If xNSht Is Nothing Then
Set xNSht = Worksheets.Add(, Sheets(Sheets.Count))
xNSht.Name = CStr(xCol.Item(I))
Else
xNSht.Move , Sheets(Sheets.Count)
End If
xSht.Range("A" & xTRrow & ":A" & xRCount).EntireRow.Copy xNSht.Range("A1")
xNSht.Columns.AutoFit
Next
xSht.AutoFilterMode = False
xSht.Activate
Application.ScreenUpdating = xSUpdate
End Sub
Explicação dos parâmetros e dicas de uso:
- A1:C1 é o intervalo do cabeçalho da sua tabela de dados. Ajuste essa referência para corresponder à área do cabeçalho real conforme necessário.
- O código coleta valores únicos da coluna especificada (por padrão, coluna A). Cada valor único recebe sua própria planilha com as linhas correspondentes.
- Se sua tabela for mais larga ou começar em uma linha diferente, atualize
xTitle
e as referências de célula de acordo. - Se sua planilha contiver fórmulas que façam referência a outras planilhas, verifique as referências após a divisão.
3. Pressione a tecla F5 ou clique em Executar para executar o código. Novas planilhas serão criadas após todas as planilhas existentes na pasta de trabalho atual, cada uma nomeada de acordo com o valor exclusivo da coluna escolhida. Veja a captura de tela abaixo para um resultado de exemplo:
Se você deseja simplesmente dividir cada linha em sua própria planilha, independentemente do conteúdo da coluna, pode usar o seguinte código VBA alternativo. Isso elimina a necessidade de especificar uma condição de coluna.
Código VBA: Criar diretamente nova planilha para cada linha
Sub RowToSheet()
Dim xRow As Long
Dim I As Long
With ActiveSheet
xRow = .Range("A" & Rows.Count).End(xlUp).Row
For I = 1 To xRow
Worksheets.Add(, Sheets(Sheets.Count)).Name = "Row " & I
.Rows(I).Copy Sheets("Row " & I).Range("A1")
Next I
End With
End Sub
Após executar este código no módulo, cada linha da planilha ativa — incluindo a linha de cabeçalho — será copiada para uma nova planilha criada. Observe que a linha de cabeçalho também será duplicada; se desejar evitar isso, pode ser necessário excluir ou ajustar manualmente as planilhas de saída posteriormente.
Solução de problemas e dicas práticas:
- Se você encontrar um erro como "Índice fora do intervalo", certifique-se de que os nomes das suas planilhas não contenham caracteres inválidos ou nomes duplicados.
- Conjuntos de dados grandes podem resultar em um grande número de planilhas, o que pode retardar o Excel ou dificultar a navegação. Considere se dividir por linha é necessário para tabelas extremamente grandes.
- Sempre mantenha um backup dos seus dados antes de executar o código VBA para evitar a perda acidental de dados.
Vantagens: Gratuito; altamente personalizável.
Desvantagens: Requer que VBA/macros estejam habilitados e algum conhecimento do editor VBA; potencial para erros de código com dados complexos ou incomuns.
Apropriado para: Usuários que precisam de flexibilidade de script e para tarefas únicas ou irregulares.
Criar novas planilhas para cada linha com a ferramenta Dividir Dados do Kutools para Excel
Se você prefere uma abordagem direta e amigável sem escrever código, a ferramenta Dividir Dados do Kutools para Excel é altamente recomendada. Essa função ajuda você a dividir dados em novas planilhas rapidamente com apenas alguns cliques, simplificando significativamente o processo de gerenciamento de planilhas. O Kutools é especialmente útil para usuários que lidam regularmente com tabelas grandes e complexas ou que preferem interfaces gráficas em vez de codificação manual. Observe que o Kutools é um complemento do Excel e deve ser instalado previamente.
1. Selecione a tabela contendo os dados que você deseja dividir em planilhas individuais. Em seguida, clique na guia Kutools Plus e selecione Dividir Dados. Consulte a captura de tela abaixo para clareza:
2. Na caixa de diálogo Dividir Dados em Múltiplas Planilhas, escolha as configurações apropriadas com base nas suas necessidades de divisão.
A. Para criar novas planilhas com base em valores de coluna:
B. Para criar diretamente novas planilhas para cada linha:
Após a execução, uma nova pasta de trabalho será gerada contendo todas as novas planilhas — cada uma preenchida de acordo com as configurações selecionadas.
Criando novas planilhas para cada linha com base nos valores da coluna:
Criando nova planilha para cada linha sem considerar os valores da coluna:
Precauções e dicas práticas:
- Antes de usar a ferramenta Dividir Dados, certifique-se de que não há linhas em branco na sua tabela, pois elas podem resultar em planilhas vazias.
- Revise as convenções de nomenclatura das planilhas para evitar nomes duplicados ou inválidos; o Kutools ajustará automaticamente se ocorrer um conflito de nome.
- O processo pode gerar um grande número de planilhas se sua tabela for muito grande, então considere isso antes de prosseguir.
Vantagens: Fácil de usar, sem necessidade de codificação; adequado para processamento em lote e tarefas frequentes.
Desvantagens: Requer a instalação do complemento Kutools.
Apropriado para: Todos os níveis de usuários do Excel, especialmente aqueles que lidam com segmentação de dados repetitiva.
Kutools para Excel - Potencialize o Excel com mais de 300 ferramentas essenciais. Aproveite recursos de IA permanentemente gratuitos! Obtenha Agora
Demonstração: Criar novas planilhas para cada linha com a ferramenta Dividir Dados do Kutools para Excel
Melhores Ferramentas de Produtividade para Office
Impulsione suas habilidades no Excel com Kutools para Excel e experimente uma eficiência sem igual. Kutools para Excel oferece mais de300 recursos avançados para aumentar sua produtividade e economizar tempo.Clique aqui para obter o recurso que você mais precisa...
Office Tab traz interface de abas para o Office e facilita muito seu trabalho
- Habilite a edição e leitura com abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas abas da mesma janela, em vez de novas janelas.
- Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!