Juntar Tabelas no Excel

Veja neste arquivo como juntar tabelas no Excel de 3 maneiras diferentes.

No vídeo baixo tem a aula completa para acompanhar a explicação detalhada do blog e ao final do artigo está o download da planilha exemplo para exercitar.

Juntar Tabelas no Excel com VBA – Método 3

Iremos mostrar aqui da forma mais difícil para a mais simples, por isso começamos com o VBA.

O formato que temos de todas as tabelas é o seguinte:

As tabelas são 12 no total, poderiam ser mais, quantas quiser.

Todas precisam ter a mesma estrutura, ou seja o mesmo cabeçalho e tipos de dados abaixo delas.

No exemplo temos os meses dos anos e o nome de todas as tabelas seguem um padrão, começando com Vendas.

Isso é importante porque assim conseguimos identificar somente as tabelas que desejamos unir.

Como Juntar tabelas no Excel 1

Para unir as tabelas no Excel usando o VBA siga o seguinte procedimento.

Primeiro habilite a guia desenvolvedor clicando em Arquivo->Opções->Personalizar Faixa de Opções.

Marque a opção de guia Desenvolvedor em Guias Principais.

Uma vez feito isto você terá uma nova guia no Excel, a guia Desenvolvedor para usar com o VBA.

Clique nela e clique em Visual Basic ou pressione ALT+F11 e insira este código.

Na janela do VBE que abriu Clique em Inserir->Módulo e cole o código abaixo.

Alteramos ali o nome da planilha aonde usamos o código para Metodo3.

Recomendo acompanhar este código no vídeo ao topo do artigo caso tenha dúvidas de como executá-lo.

Public Sub lsJuntarTabelas()
    Dim ws      As Worksheet
    Dim lLinha  As Long
    
    'Limpa o conteúdo
    Metodo3.Range("B8:F1048576").ClearContents
    
    'Loop entre as planilhas
    For Each ws In Worksheets
        'Se a planilha começar com ( então...
        If Left(ws.Name, 1) = "(" Then
            'Próxima linha aonde irá incluir
            lLinha = Metodo3.Cells(Metodo3.Rows.Count, 2).End(xlUp).Row + 1
            'Copia e cola os dados da tabela, deve haver apenas uma tabela na planilha por este método
            ws.ListObjects(1).DataBodyRange.Copy
            Metodo3.Cells(lLinha, 2).PasteSpecial xlPasteValues
        End If
    Next
    
    MsgBox "Concluído!"
    Metodo3.Range("a1").Select
    
End Sub

Uma vez feito isso, já pode executar o código.

Acompanhando ele você terá o copia e cola de cada uma das tabelas.

Como resultado temos a lista de dados preenchida abaixo:

Ao executar o procedimento de unir planilhas você terá então a lista acima com as tabelas colocadas uma abaixo da outra.

Juntar Tabelas no Excel com Power Query – Método 2

Neste método que utilizaremos para unir as tabelas iremos usar o Power Query.

Para isso clique sobre a primeira tabela de vendas e na guia Dados->De Tabela/Intervalo.

Será aberto então o Power Query e clique na primeira etapa.

Altere a primeira linha na barra de fórmula e apague a parte abaixo destacada, mantendo então somente Excel.CurrentWorkbook().

Como resultado temos então todas as tabelas sendo exibidas, conforme pode ver na imagem abaixo.

Na coluna Content temos o tipo de dados, no caso Table (Tabela) e em Name, temos o nome de cada tabela.

Após isso clique na coluna Name e em Filtrar Linhas selecione começa com e digite Vendas, isso para que tenhamos apenas as tabelas que começam com o nome Vendas e que desejamos unir.

Clique no botão de expandir dados e desmarque o item Use o nome da coluna original como prefixo e escolha as colunas que deseja unir.

Ao clicar em OK e em seguida clique em Fechar e Carregar e selecione em carregar para modelo de dados ou tabela e carregue conforme abaixo no Excel.

Juntar Tabelas no Excel com Função EmpilharV – Método 3

A função EmpilharV tem por finalidade Unir tabelas ou matrizes dinâmicas.

Esta função está disponível no Office 365 no Excel Insider.

Esta função permite então que dinamicamente os dados sejam unidos, inclusive ao alterar dados da origem eles serão alterados também na função EmpilharV.

O uso desta função é bastante simples, passe apenas os intervalos dos dados, tabelas ou matrizes dinâmicas.

Veja como ficou a função:

=EMPILHARV(Vendas1;Vendas2;Vendas3;Vendas4;Vendas5;Vendas6;Vendas7;Vendas8;Vendas9;Vendas10;Vendas11;Vendas12)

O resultado que temos então é a lista abaixo com todas as informações dispostas uma abaixo da outra.

Importante de entender também que estes dados viram uma matriz dinâmica, e você poderá classificar ou filtrar estes dados usando funções como CLASSIFICAR e FILTRO.

Download Planilha de Juntar Tabelas no Excel

Clique no botão abaixo para realizar o  download do arquivo de exemplo:

Baixe a planilha

Sair da versão mobile