Código VBA "atrás" de uma folha de cálculo ou de um livro pode não funcionar no Excel

Para uma versão microsoft Excel 97 deste artigo, consulte 157346.Para uma versão microsoft Excel 98 deste artigo, consulte 182482.

Sintomas

No Microsoft Office Excel, o código macro Microsoft Visual Basic for Application (VBA) que está contido "atrás" de uma folha de cálculo ou de um livro pode não funcionar corretamente.

Causa

Isto ocorrerá se ambas as seguintes condições forem verdadeiras:

  • O código em questão está contido numa subrotina de funcionamento automática, como uma Auto_Open ou Auto_Close subrotina.

  • O código não está contido num módulo Visual Basic, mas sim "atrás" de uma folha de cálculo ou da própria folha de cálculo.

Solução

Para que as sub-rotinas que funcionem automaticamente funcionem corretamente no Microsoft Excel, devem ser contidas num módulo Visual Basic. Deve inserir um módulo Visual Basic no livro e, em seguida, colocar o código no novo módulo. Para inserir um módulo Visual Basic:

  1. No Project Explorer no Editor Visual Basic, ative o livro que contém o código em questão.

  2. No menu Inserir, clique em Módulo.

Depois de inserir o novo módulo, corte o código da sua localização original e cole-o no módulo Visual Basic. Então, guarde o livro.

Mais Informações

No Excel, o código VBA pode ser armazenado em três locais diferentes: num módulo Visual Basic, num módulo de classe Visual Basic e em folhas de cálculo e livros "atrás". Para editar código "por trás" de uma folha de cálculo ou de um livro:

  1. Ativar o Editor De Base Visual (prima ALT+F11).

  2. Na janela Do Project Explorer, verá entradas semelhantes às seguintes:

         VBAProject (Book1)         Microsoft Excel Objects            Sheet1 (Sheet1)            Sheet2 (Sheet2)            Sheet3 (Sheet3)            ThisWorkbook                  Modules             Module1 

Se clicar duas vezes num dos nomes da folha de cálculo ou no Livro de Trabalhos,pode escrever código na janela de código. Este código não contido num módulo Visual Basic é considerado como "por trás" da folha de cálculo oudo Livro de Trabalhos . Se uma Auto_Open, Auto_Close, ou outra subrotina de funcionamento automática for armazenada "atrás" de uma folha de cálculo ou do Livro de Trabalhos,poderá não funcionar corretamente quando abrir ou fechar a sua manual, ou quando executa uma ação que deve fazer com que a sub-rotina funcione.

Precisa de mais ajuda?

Aumente os seus conhecimentos
Explore as formações
Seja o primeiro a obter novas funcionalidades
Aderir ao Microsoft insiders

As informações foram úteis?

Obrigado pelos seus comentários!

Obrigado pelo seu feedback! Parece que poderá ser benéfico reencaminhá-lo para um dos nossos agentes de suporte do Office.

×