Macros do Excel - Configurando uma Macro

Você pode gravar uma macro e salvá-la com o nome Auto_Open para executá-la sempre que abrir a pasta de trabalho que contém essa macro.

Você também pode escrever código VBA para a mesma finalidade com o evento Open da pasta de trabalho. O evento Open executa o código no subprocedimento Workbook_Open () sempre que você abre a pasta de trabalho.

Gravando uma macro Auto_Open

Você pode gravar uma macro Auto_Run da seguinte maneira -

  • Clique na guia EXIBIR na Faixa de Opções.
  • Clique em macros.
  • Clique em Gravar macro. A caixa de diálogo Gravar Macro é exibida.
  • Digite Auto_Run para o nome da macro.
  • Digite uma descrição e clique em OK.
  • Comece a gravar a macro.
  • Pare de gravar.
  • Salve a pasta de trabalho como uma pasta de trabalho habilitada para macro.
  • Feche a pasta de trabalho.
  • Abra a pasta de trabalho. A macro Auto_Run será executada automaticamente.

Se você deseja que o Excel inicie sem executar uma macro Auto_Open, mantenha pressionada a tecla SHIFT ao iniciar o Excel.

Limitações da macro Auto_Open

A seguir estão as limitações da macro Auto_Open -

  • Se a pasta de trabalho na qual você salvou a macro Auto_Open contiver código para o evento Open da pasta de trabalho, o código do evento Open substituirá as ações na macro Auto_Open.

  • Uma macro Auto_Open é ignorada quando a pasta de trabalho é aberta executando o código que usa o método Open.

  • Uma macro Auto_Open é executada antes de qualquer outra pasta de trabalho ser aberta. Portanto, se você registrar as ações que deseja que o Excel execute na pasta de trabalho Book1 padrão ou em uma pasta de trabalho carregada da pasta XLStart, a macro Auto_Open falhará quando você reiniciar o Excel, porque a macro é executada antes que as pastas de trabalho padrão e de inicialização sejam abertas .

Se você encontrar qualquer uma dessas limitações, em vez de gravar uma macro Auto_Open, você deve escrever um código para o evento Open conforme descrito na próxima seção.

Código VBA para evento aberto de uma pasta de trabalho

Você pode escrever código que será executado quando você abrir uma pasta de trabalho. O VBA fornece um evento denominado open que incorpora um procedimento VBA para as ações a serem executadas ao abrir uma pasta de trabalho.

Abra a pasta de trabalho na qual você armazenou a macro que você escreveu para as referências absolutas - Report_ProjectXYZ. Quando esta macro é executada, uma nova planilha será adicionada à pasta de trabalho e a estrutura do relatório do projeto aparecerá na nova planilha.

Você pode escrever um código de macro que realizará essas ações ao abrir a pasta de trabalho. Isso significa que quando você abre a pasta de trabalho Relatório do Projeto, uma nova planilha com a estrutura do relatório estará pronta para você inserir os detalhes.

Siga o procedimento fornecido abaixo no editor VBA -

  • Clique duas vezes em ThisWorkbook no Projects Explorer.

  • Na janela de código, selecione Workbook na lista suspensa à esquerda e Abrir na lista suspensa à direita. Sub Workbook_Open () aparece.

  • Clique em Módulos no Explorador de projetos.

  • Clique duas vezes no nome do módulo que contém o código da macro.

  • Copie o código de macro do módulo e cole-o no Sub WorkBook_Open ().

Salve a pasta de trabalho habilitada para macro. Abra novamente. A macro é executada e uma nova planilha com a estrutura do relatório é inserida.