Unir planilhas Excel com VBA

Neste artigo é demonstrado como unificar dados de planilhas Excel com o uso de VBA. O exemplo é bastante passo-a-passo e simples de implementar.

MR
Marcos Rieper

Especialista em Excel

05 de julho de 2015 Atualizado 08 de julho de 2026 3 min de leitura
Unificar planilhas Excel com VBA

Unir planilhas Excel com VBA

Unificar planilhas Excel com VBA

Neste artigo apresentaremos um código VBA Excel que realiza a unificação de planilhas.

Imagine a seguinte situação. Você tem várias pastas de trabalho Excel preenchidas por diversos usuários, ou ainda vieram dezenas de arquivos referentes á um mês de processamento de arquivos de um determinado fornecedor e você gostaria de uni-los para analisá-los.

Este código VBA Excel realiza a unificação das planilhas que estiverem abertas em um único arquivo informado no início do processo.

Abaixo o processo como funciona:

1. Copie o código VBA e adicione á sua pasta Personal. Veja aqui como realizar esta tarefa: Habilitando a guia desenvolvedor e copiando códigos VBA da internet.

'UnificarPlanilhas Macro
Sub lsUnificarPlanilhas()

  Dim Message As String
  Dim Title As String
  Dim Default As String
  Dim MyValue As String
  Dim wb As Workbook
  Dim lUltimaColunaAtiva As Long
  Dim lUltimaLinhaAtiva As Long
  Dim lRng As Range
  
  Message = "Informe o nome da Planilha de Destino"
  Title = "Unificar Planilhas"
  Default = "1"
 
  'Solicita informação da planilha que será unificada
  PlanilhaDestino = InputBox(Message, Title, Padrão)
  If PlanilhaDestino = "" Then
     MsgBox "Planilha não informada, a macro será Finalizada!"
     Exit Sub
  End If
 
  'Verificar se o arquivo existe
  For i = 1 To Workbooks.Count
      If Workbooks(i).Name = PlanilhaDestino Then
          Exit For
      Else
        If i = Workbooks.Count Then
          MsgBox "Planilha Destino não Encontrada, a macro será Finalizada!"
          Exit Sub
        End If
      
      End If
  Next i
  
  'Colar os dados selecinoados
  For i = 1 To Workbooks.Count
       If Workbooks(i).Name <> "PERSONAL.XLSB" And Workbooks(i).Name <> PlanilhaDestino Then
            Workbooks(Workbooks(i).Name).Worksheets(1).Activate
            
            lUltimaLinhaAtiva = Cells(Rows.Count, 1).End(xlUp).Row
            lUltimaColunaAtiva = ActiveSheet.Cells(1, 5000).End(xlToLeft).Column
            Set lRng = Range(Cells(1, lUltimaColunaAtiva).Address)
            
            Range("A" & 2 & ":" & gfLetraColuna(lRng) & lUltimaLinhaAtiva).Select
            Selection.Copy
            
            Workbooks(PlanilhaDestino).Worksheets(1).Activate
            
            lUltimaLinhaAtiva = Cells(Rows.Count, 1).End(xlUp).Row + 1
            Range("A" & lUltimaLinhaAtiva).Select
            
            ActiveSheet.Paste
            Application.CutCopyMode = False
      End If
          
  Next i
  ' Fecha planilhas unificadas
  For Each wb In Application.Workbooks
    If wb.Name <> "PERSONAL.XLSB" And wb.Name <> PlanilhaDestino Then
        wb.Close SaveChanges:=False
    End If
  Next
 
End Sub

Function gfLetraColuna(ByVal rng As Range) As String
    Dim lTexto() As String
    
    lTexto = Split(rng.Address, "$")
    
    gfLetraColuna = lTexto(1)
End Function

2. Abra todas as planilhas que gostaria de unificar;
3. Vá na guia Desenvolvedor e no botão Macros, selecione PERSONAL.XLSB!lsUnificarPanilhas e clique em Executar;

Unificar planilhas Excel com VBA

4. Informe a planilha que receberá a união das planilhas e clique em OK;

Unificar planilhas Excel com VBA

5. Aguarde o término do processamento. Todos os dados da primeira planilha ativa de cada arquivo serão copiados e as planilhas fechadas, exceto a planilha de destino.

Unificar planilhas Excel com VBA

Se quiser pode treinar com as planilhas utilizadas neste exemplo efetuando o download no botão abaixo.

DIGITE O SEU EMAIL PARA FAZER O DOWNLOAD DOS ARQUIVOS:

Download — baixe aqui: Unir planilhas Excel com VBA

Preencha seus dados para receber o link de download no seu e-mail.

Abraço

Marcos Rieper

Curso Excel Completo – Do Básico ao VBA

Quer aprender Excel do Básico, passando pela Avançado e chegando no VBA? Clique na imagem abaixo:

Principais recursos

Confira o que este material oferece para você.

Organização por data e etapas
Classificação automática
Ranking e destaques
Fluxos e etapas automáticas
Dashboard com indicadores
Atualização automática por fórmulas

Perguntas frequentes

O material é realmente gratuito?

Sim. O acesso é gratuito e não exige cadastro.

Preciso ter o Excel instalado?

Recomendamos o Excel 2013 ou superior para todos os recursos.

Como faço para receber atualizações?

As atualizações são automáticas dentro da própria planilha.

Funciona no Excel do Mac?

Sim, funciona no Excel para Windows e para Mac.

Funciona no celular?

É possível visualizar no app do Excel; a edição completa é no computador.

Planilhas relacionadas

Planilha de Fluxo de Caixa

Planilha de Fluxo de Caixa

(1.327)

R$ 89,90

Controle de Estoque

Controle de Estoque

(962)

R$ 69,90

Planilha Financeira Empresarial

Planilha Financeira Empresarial

(1.254)

R$ 79,90

Dashboard Financeiro no Excel

Dashboard Financeiro no Excel

(689)

R$ 49,90

Continue lendo

Curso Excel Master — Básico ao Avançado, VBA, PowerPoint e mais

Receba conteúdos e novidades direto no seu e-mail

Dicas, tutoriais, planilhas gratuitas e muito mais.

Não enviamos spam. Cancele quando quiser.

Download imediato

Acesso na hora após a compra

Compra 100% segura

Seus dados protegidos com SSL

Acesso vitalício

Use para sempre, sem mensalidades

Suporte via WhatsApp

Atendimento rápido e humanizado