Como criar uma nova folha no Excel para cada linha?
Em tarefas de gestão de dados ou elaboração de relatórios, poderá por vezes precisar de separar cada registo de uma tabela numa folha de cálculo individual. Por exemplo, se tiver uma lista com dados de alunos no Excel — em que cada linha corresponde a um aluno diferente — pode querer gerar uma folha distinta para cada um, contendo apenas as suas informações específicas. Alternativamente, poderá pretender simplesmente dividir todas as linhas, independentemente do seu conteúdo, de modo que cada uma fique numa nova folha própria. Criar e copiar manualmente os dados para novas folhas é um processo moroso e propenso a erros, especialmente com conjuntos de dados extensos. Automatizar esta tarefa poupa tempo significativo e reduz consideravelmente o risco de enganos. Este guia apresenta-lhe duas soluções práticas para criar uma nova folha por linha no Excel, explicando as vantagens e desvantagens de cada método, para que possa escolher a abordagem mais adequada ao seu cenário.
Criar folhas novas para cada linha com código VBA
Criar folhas novas para cada linha com a utilidade Dividir Dados do Kutools para Excel
Criar folhas novas para cada linha com código VBA
Utilizar VBA (Visual Basic for Applications) é uma forma eficaz de automatizar tarefas no Excel que, de outra forma, seriam tediosas e repetitivas. Com o VBA, pode criar rapidamente uma nova folha para cada linha dos seus dados — quer agrupando linhas com base numa coluna específica (como o nome de um aluno), quer gerando uma folha individual para cada linha, independentemente do seu conteúdo. Esta abordagem é ideal para utilizadores à vontade com o editor VBA e que procuram uma solução altamente personalizável. Contudo, exige a edição e execução de código, podendo não ser adequada a quem não tenha experiência em VBA ou não disponha de permissão para executar macros no seu ambiente.
1. Prima «Alt» + "F11" para abrir a janela Microsoft Visual Basic for Applications, que lhe permite aceder ao código VBA e 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. Depois, copie e cole o seguinte código na janela do Módulo.
Código VBA: criar nova folha para cada linha com base numa 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 utilização:
- A1:C1 é o intervalo de cabeçalho da sua tabela de dados. Ajuste esta referência para corresponder à área real dos cabeçalhos dos seus dados, conforme necessário.
- O código recolhe os valores únicos da coluna especificada (por predefinição, a coluna A), atribuindo a cada valor único a sua própria folha de cálculo com as respetivas linhas.
- Se a sua tabela for mais larga ou começar numa linha diferente, atualize
xTitlee as referências das células em conformidade. - Se a sua folha de cálculo contiver fórmulas com referências a outras folhas, verifique essas referências após a divisão.
3. Prima a tecla F5 ou clique em Executar para executar o código. Será criada uma nova folha após todas as folhas existentes no livro de trabalho atual, com o nome correspondente a cada valor único da coluna escolhida. Veja a imagem abaixo para um exemplo do resultado:

Se pretender simplesmente dividir cada linha numa folha de cálculo individual, independentemente do conteúdo da coluna, pode utilizar o seguinte código VBA alternativo — eliminando assim a necessidade de especificar uma condição de coluna.
Código VBA: criar diretamente nova folha 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 folha de cálculo ativa — incluindo a linha de cabeçalho — será copiada para uma nova folha de cálculo. Tenha em atenção que a linha de cabeçalho também será duplicada; caso pretenda evitar esta repetição, poderá ter de eliminar ou ajustar manualmente as folhas resultantes posteriormente.
Resolução de problemas e dicas práticas:
- Se encontrar um erro como «Índice fora do intervalo», certifique-se de que os nomes das suas folhas não contêm caracteres inválidos nem nomes duplicados.
- Conjuntos de dados grandes podem gerar um elevado número de folhas, o que pode tornar o Excel lento ou dificultar a navegação. Avalie se a divisão por linha é realmente necessária em tabelas extremamente grandes.
- Faça sempre uma cópia de segurança dos seus dados antes de executar código VBA para evitar perdas acidentais de informação.
Vantagens: Gratuito; altamente personalizável.
Desvantagens: Requer macros/VBA ativadas e alguma familiaridade com o editor VBA; risco de erros de código com dados complexos ou invulgares.
Adequado para: Utilizadores que necessitem de flexibilidade em scripts e para tarefas pontuais ou irregulares.
Criar folhas novas para cada linha com a utilidade Dividir Dados do Kutools para Excel
Se preferir uma abordagem simples e amigável, sem escrever código, recomendamos vivamente a funcionalidade Dividir Dados do Kutools para Excel. Esta ferramenta permite-lhe dividir dados numa nova folha de cálculo rapidamente, com apenas alguns cliques, simplificando significativamente a gestão das suas folhas. O Kutools é especialmente útil para utilizadores que trabalham regularmente com tabelas grandes e complexas ou que preferem interfaces gráficas à codificação manual. Note que o Kutools é um suplemento do Excel e tem de estar previamente instalado.
1. Selecione a tabela que contém os dados que pretende dividir em folhas de cálculo individuais. Em seguida, clique no separador KUTOOLS PLUS e selecione Dividir Dados. Consulte a imagem abaixo para maior clareza:

2. Na caixa de diálogo Dividir Dados em Múltiplas Planilhas, selecione as definições mais adequadas às suas necessidades de divisão.
A. Para criar folhas novas com base nos valores de uma coluna:

B. Para criar diretamente uma nova folha para cada linha:

Após a execução, será gerado um novo workbook contendo todas as novas folhas de cálculo — cada uma preenchida de acordo com as definições selecionadas.
Criar folhas novas para cada linha com base nos valores de uma coluna:

Criar folha nova para cada linha sem considerar os valores da coluna:

Precauções e dicas práticas:
- Antes de utilizar a funcionalidade Dividir Dados, certifique-se de que não existem linhas em branco na sua tabela, pois estas podem originar folhas vazias.
- Verifique as convenções de nomeação das folhas para evitar nomes duplicados ou inválidos; o Kutools ajustará automaticamente os nomes em caso de conflito.
- O processo pode gerar um grande número de folhas se a sua tabela for muito extensa, por isso considere cuidadosamente esta possibilidade antes de avançar.
Vantagens: Fácil de utilizar, sem necessidade de programação; ideal para processamento em lote e tarefas frequentes.
Desvantagens: Requer a instalação prévia do suplemento Kutools.
Adequado para: Utilizadores de todos os níveis do Excel, especialmente quem lida com segmentação repetitiva de dados.
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á
Demonstração: Criar folhas novas para cada linha com a utilidade Dividir Dados do Kutools para Excel
As Melhores Ferramentas de Produtividade para o Office
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.
- 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