Skip to main content

Como duplicar linhas com base no valor da célula em uma coluna?

Author: Xiaoyang Last Modified: 2025-07-21

Ao trabalhar com tabelas de dados no Excel, você pode, às vezes, precisar duplicar linhas inteiras de acordo com um valor em uma coluna específica. Por exemplo, imagine que você tenha uma tabela onde a coluna D indica um número, e seu objetivo é copiar ou inserir cada linha tantas vezes quanto o valor correspondente na célula da coluna D. Isso pode ser útil para expansão de dados, preparação de conjuntos de dados para testes, simulação de inventário ou geração de linhas de pedidos repetidos. Realizar isso de forma eficiente, sem repetição manual, ajuda a manter a integridade dos dados e acelera muito o fluxo de trabalho, especialmente para tabelas maiores.

Screenshot showing data table with numbers in column D before duplicating rows based on values Arrow Screenshot showing data table after duplicating rows based on column D values in Excel

Duplicar linhas várias vezes com base nos valores das células usando código VBA

Copiar e inserir linhas com base em um número específico de vezes com uma ferramenta prática - Kutools para Excel

Duplicar linhas via transformação do Power Query


Duplicar linhas várias vezes com base nos valores das células usando código VBA

Se você precisa criar rapidamente duplicatas de linhas inteiras de acordo com os valores em uma coluna específica (por exemplo, na coluna D), o VBA oferece uma solução direta e eficiente. Essa abordagem é particularmente valiosa ao lidar com grandes conjuntos de dados, pois automatiza o processo e ajuda a garantir precisão. No entanto, trabalhar com o VBA requer algum conhecimento básico da guia Desenvolvedor no Excel e uma compreensão de como executar macros. A principal vantagem é a flexibilidade - o código pode ser ajustado para se adaptar a diferentes intervalos ou colunas-alvo. Por outro lado, se você não está confortável com VBA ou políticas de segurança bloqueiam macros no seu ambiente, considere uma das soluções alternativas abaixo.

1. Pressione e segure as teclas ALT + F11 para abrir a janela Microsoft Visual Basic for Applications.

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

Código VBA: Duplicar linhas várias vezes com base no valor da célula:

Sub CopyData()
'Updateby Extendoffice
    Dim xRow As Long
    Dim VInSertNum As Variant
    xRow = 1
    Application.ScreenUpdating = False
    Do While (Cells(xRow, "A") <> "")
        VInSertNum = Cells(xRow, "D")
        If ((VInSertNum > 1) And IsNumeric(VInSertNum)) Then
           Range(Cells(xRow, "A"), Cells(xRow, "D")).Copy
           Range(Cells(xRow + 1, "A"), Cells(xRow + VInSertNum - 1, "D")).Select
           Selection.Insert Shift:=xlDown
           xRow = xRow + VInSertNum - 1
        End If
        xRow = xRow + 1
    Loop
    Application.ScreenUpdating = False
End Sub

3. Em seguida, pressione a tecla F5 para executar este código. As linhas inteiras serão duplicadas várias vezes com base no valor da célula na coluna D, atendendo aos seus requisitos.

Observação: No código acima, a letra A representa a primeira coluna do intervalo de dados selecionado, e D é a letra da coluna usada para o número de duplicações. Altere essas letras conforme necessário para corresponder à sua própria planilha. Antes de executar macros, lembre-se de fazer backup de sua pasta de trabalho, pois operações de macro não podem ser desfeitas. Se uma mensagem de erro aparecer, verifique se o intervalo de dados selecionado e as colunas-alvo são consistentes.

Copiar e inserir linhas com base em um número específico de vezes com uma ferramenta prática - Kutools para Excel

Se você prefere um método sem usar código, ou deseja uma interface amigável para gerenciar a duplicação em lote, o Kutools para Excel oferece uma solução prática. O recurso Copiar ou Inserir Linhas/Colunas com Base no Valor da Célula permite copiar e inserir linhas rapidamente de acordo com o número especificado nas células relevantes. Isso é ideal para quem lida regularmente com operações repetitivas de linhas e precisa de um processo mais visual e personalizável. O Kutools mantém o layout e a formatação da tabela original durante a duplicação, reduzindo o risco de erros acidentais. Esse método funciona bem independentemente de sua experiência com VBA e melhora significativamente a eficiência para intervalos de dados médios a grandes.

Kutools para Excel oferece mais de 300 recursos avançados para simplificar tarefas complexas, aumentando a criatividade e a eficiência. Integrado com capacidades de IA, o Kutools automatiza tarefas com precisão, tornando a gestão de dados fácil e eficiente. Mais informações sobre o Kutools para Excel...  Teste gratuito...
  1. Clique em Kutools > Inserir > Copiar ou Inserir Linhas/Colunas com Base no Valor da Célula para habilitar esse recurso;
  2. Em seguida, escolha a opção Copiar e inserir linhas e especifique separadamente as células do Intervalo de Inserção e Número de Repetições na caixa de diálogo. Confirme suas escolhas e clique em OK.

Screenshot of Kutools for Excel Duplicate Rows/Columns feature dialog box


Duplicar linhas via transformação do Power Query

O Power Query oferece uma solução robusta e repetível para duplicar linhas com base no valor de uma coluna - ideal para tabelas maiores ou quando você precisa atualizar dados frequentemente. Ao usar essa ferramenta, você pode expandir linhas de acordo com indicadores numéricos sem fórmulas ou códigos. Este método funciona bem para usuários que desejam um processo passo a passo explicável visualmente e precisam de repetibilidade com atualizações futuras de dados.

1. Adicione seus dados a uma Tabela do Excel (selecione o intervalo e pressione Ctrl+T). Vá para Dados > De Tabela/Intervalo para carregar sua tabela no Power Query.

2. No Editor do Power Query, selecione a guia Adicionar Coluna e clique em Coluna Personalizada.

3. Digite a seguinte fórmula para gerar uma lista para cada linha de acordo com o valor na coluna D. ( Observação: Você deve substituir [D] pelo cabeçalho real da sua coluna. Por exemplo, aqui, selecionarei os Números de Repetição e clicarei no botão Inserir para substituir o argumento [D].)

List.Repeat({1}, [D])

set options in the Power Query Editor

4. Clique no botão Expandir ao lado da nova coluna personalizada e clique em Expandir para Novas Linhas.

Click the Expand button

5. Em seguida, você pode ver que os dados foram duplicados com base nos valores na coluna D, veja a captura de tela:

the data has been duplicated based on the values

6. Remova as colunas auxiliares, se necessário, e clique em Fechar e Carregar para retornar os dados ao Excel.

Dicas: Sempre que seus dados de origem mudarem, basta atualizar a saída do Power Query para atualizar automaticamente as linhas repetidas. Isso garante eficiência e precisão para processos de dados contínuos ou automatizados. O Power Query está integrado ao Excel 2016 e versões posteriores, e está disponível como um complemento gratuito em versões anteriores. Se sua versão do Excel não tiver Power Query ou você não conseguir criar consultas, considere usar uma das soluções de fórmula ou VBA mencionadas acima.

Melhores Ferramentas de Produtividade para Office

🤖 Assistente AI do KUTOOLS: Revolucione a 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
Recursos Populares: Encontrar, Destacar ou Marcar Duplicatas | Excluir Linhas em Branco | Combinar Colunas ou Endereço sem Perder Dados | Arredondar...
Super PROC: PROC com Múltiplos Critérios | PROC com Múltiplos Valores | Procura em várias planilhas | Correspondência Fuzzy...
Lista Suspensa Avançada: Crie rapidamente uma Lista Suspensa | Lista Suspensa Dependente | Lista Suspensa com Múltipla Seleção...
Gerenciador de Colunas: Adicionar um Número Específico de Colunas | Mover Colunas | Alternar Estado de Visibilidade das Colunas Ocultas | Comparar Intervalo & Colunas...
Recursos em Destaque: Grade de foco | Visualização de Design | Barra de fórmulas aprimorada | Gerenciador de Pasta de trabalho & Planilha | Biblioteca de AutoTexto | Selecionador de Data | Mesclar Dados | Criptografar/Descriptografar Células | Enviar Email por Lista | Super Filtro | Filtro Especial (filtrar negrito/itálico/tachado...)...
Top15 Conjuntos de Ferramentas:12 Ferramentas de Texto (Adicionar Texto, Excluir Caracteres Específicos, ...) | Mais de50 Tipos de Gráficos (Gráfico de Gantt, ...) | Mais de40 Fórmulas Práticas (Calcular a idade com base na data de nascimento, ...) |19 Ferramentas de Inserção (Inserir Código QR, Inserir Imagem a partir do Caminho, ...) |12 Ferramentas de Conversão (Converter em Palavras, Conversão de Moeda, ...) |7 Ferramentas de Mesclar & Dividir (Mesclar Linhas Avançado, Dividir Células, ...) | ... e muito mais

Potencialize suas habilidades no Excel com o Kutools para Excel e experimente uma eficiência sem igual. O 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...


O Office Tab traz interface com abas para o Office e facilita muito o 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 na mesma janela, em vez de abrir novas janelas.
  • Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!