KutoolsforOffice — Uma solução, cinco ferramentas poderosas.Fazer mais com menos esforço.

Como executar uma macro em simultâneo em vários livros de trabalho?

AutorXiaoyang Data de Modificação

Trabalhar com várias pastas de trabalho do Excel exige frequentemente a repetição da mesma operação ou tarefa automatizada em múltiplos ficheiros. Abrir cada livro individualmente para executar uma macro consome não só tempo valioso, mas também aumenta o risco de erro — especialmente em cenários com grandes volumes de ficheiros. Automatizar este processo é essencial para potenciar a produtividade e garantir precisão.

Ao utilizar o VBA (Visual Basic for Applications), simplifique o seu fluxo de trabalho ao executar automaticamente uma macro em todos os livros de trabalho de uma pasta específica — poupando tempo e garantindo consistência. Este guia mostra como configurar e usar uma solução VBA para aplicar a macro pretendida a múltiplos ficheiros sem precisar de os abrir manualmente.

Cenários típicos em que esta abordagem é útil incluem:

  • Aplicar formatação ou cálculos a uma coleção de relatórios mensais
  • Normalizar etapas de limpeza de dados em vários conjuntos de exportações de dados
  • Atualizar modelos em lote ou adicionar estruturas a ficheiros antigos
Este método de processamento em lote é ideal para utilizadores que executam tarefas repetitivas no Excel em ambientes empresariais, educativos ou de investigação.

Execute a mesma macro em vários livros de trabalho com código VBA

Para executar a mesma macro eficientemente em vários livros de trabalho sem precisar de os abrir manualmente um a um, utilize um script VBA concebido para operações em lote. Este método pede-lhe que selecione uma pasta e, de seguida, processa automaticamente todos os ficheiros nela contidos — ideal para a maioria das tarefas comuns de automação com macros.

Antes de começar:

  • Todos os livros de trabalho de destino estão fechados. O script irá abri-los e processá-los conforme necessário.
  • A macro que pretende executar não requer interação do utilizador — como caixas de mensagem ou pedidos de entrada —, uma vez que o processamento em lote será interrompido por diálogos.
  • Guarde o seu trabalho, pois o processamento em lote de macros não pode ser facilmente anulado e poderá substituir dados caso não seja cuidadosamente programado.

Siga estes passos para aplicar uma macro em vários livros de trabalho:

1. Prima e mantenha premidas as teclas «ALT + F11» para abrir a janela do Microsoft Visual Basic for Applications.

2. No editor VBA aberto, clique em "Inserir« > »Módulo" para criar um novo módulo e cole a macro fornecida na janela em branco do módulo.

Código VBA: Execute a mesma macro em vários livros de trabalho simultaneamente:

Sub LoopThroughFiles()
    Dim xFd As FileDialog
    Dim xFdItem As Variant
    Dim xFileName As String
    Set xFd = Application.FileDialog(msoFileDialogFolderPicker)
    If xFd.Show = -1 Then
        xFdItem = xFd.SelectedItems(1) & Application.PathSeparator
        xFileName = Dir(xFdItem & "*.xls*")
        Do While xFileName <> ""
            With Workbooks.Open(xFdItem & xFileName)
                'your code here
            End With
            xFileName = Dir
        Loop
    End If
End Sub

Notas e dicas importantes:

  • No código acima, localize a linha With Workbooks.Open(xFdItem & xFileName). Copie e cole o código da sua macro pretendida (excluindo as linhas)Sub e End Sub) entre esta linha e End With. Assim, a operação será executada em cada livro de trabalho aberto.
  • Verifique novamente a lógica da sua macro e os caminhos para garantir um processamento em lote correto e, se a macro efetuar alterações nos dados, considere testá-la primeiro com um pequeno conjunto de ficheiros.

Veja a captura de ecrã que ilustra onde colar a lógica da sua macro:

Uma captura de ecrã que mostra o código VBA para executar uma macro em múltiplos livros do Excel

3. Prima a tecla "F5" no editor VBA para executar o script. Irá aparecer uma caixa de diálogo para seleção da pasta.

4. Na janela «Procurar», selecione a pasta que contém todos os livros de trabalho que pretende processar. O script percorrerá cada ficheiro do Excel nessa localização e executará a lógica da sua macro.

Uma captura de ecrã da caixa de diálogo de seleção de pasta para executar uma macro em múltiplos livros

5. Clique em «OK» para iniciar a operação em lote. A secção da macro que adicionou será executada em todos os livros de trabalho-alvo da pasta selecionada. Lotes maiores poderão demorar mais, dependendo da complexidade da sua macro e do número de ficheiros.

  • Segurança das macros: Se solicitado, ative as macros ou execute-as a partir de uma localização fidedigna.
  • Destino Tipo de Ficheiro: O padrão *.xls* inclui .xlsx, .xlsm e .xlsb. Ajuste, se necessário.
  • Qualifique totalmente dentro do With:Utilize pontos iniciais (por exemplo,).Worksheets("Sheet1")) para garantir que as ações sejam aplicadas ao livro de trabalho aberto.

As Melhores Ferramentas de Produtividade para o Office

🤖KUTOOLS AI Assistente: Revolucione o 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
Funcionalidades Populares:Localizar, Destacar ou Marcar Duplicatas   |  Excluir linhas em branco   |  Combinar Colunas ou Células sem Perder Dados   |   Arredondamento sem usar fórmula...
Super PROC:VLookup com Múltiplos Critérios  |  VLookup com Múltiplos Valores  |   VLookup em Múltiplas Folhas   |   Correspondência Fuzzy....
Lista Suspensa Avançada:Criar Rapidamente Lista de Seleção   |  Lista de Seleção Dependente   |  Lista de Seleção com Múltipla Escolha....
Gestor de Colunas:Adicionar um Número Específico de Colunas|Mover Colunas|Alternar Estado de Visibilidade de Colunas Ocultas|Comparar Intervalos e Colunas...
Funcionalidades em Destaque:Grade de foco   |  Visualização de Design   |Barra de fórmulas aprimorada   | Gestor de Pastas de Trabalho e Folhas   |  Biblioteca de Recursos(Texto Automático)|  Seleção de Data   |  Consolidar Planilhas  |  Encriptar/Descriptografar Células   | Enviar Emails por Lista   |  Super Filtro   |   Filtro Especial(Filtrar Células com Fonte em Negrito/itálico/rasurado...) ...
Principais Conjuntos de Ferramentas 15:12 Ferramentasde Texto(Adicionar Texto,Excluir Caracteres Específicos, ...)|   50+Tiposde Gráfico(Gráfico de Gantt, ...)|   40+ Fórmulas Práticas(Calcular a idade com base na data de nascimento, ...)|   19 Ferramentasde Inserção(Inserir QR Code,Inserir Imagem a Partir do Caminho, ...)|   12 Ferramentasde Conversão(Converter em Palavras,Conversão de moeda, ...)|   7 Ferramentasde Mesclar e Dividir(Mesclar Linhas Avançado,Dividir Células, ...)|... e muito mais
Utilize o Kutools na sua língua preferida – suporta inglês, espanhol, alemão, francês, chinês e mais 40+ idiomas!

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.

ExcelWordOutlookTabsPowerPoint
  • 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