Executar uma macro

Existem várias formas de executar uma macro no Microsoft Excel. Uma macro consiste numa acção ou num conjunto de acções que pode utilizar para automatizar tarefas. As macros são gravadas na linguagem de programação Visual Basic for Applications. Pode sempre executar uma macro clicando no comando Macros no friso (separador Programador, grupo Código). Dependendo da forma de execução atribuída à macro, também poderá conseguir executá-la premindo uma tecla de atalho (tecla de atalho: tecla de função ou uma combinação de teclas (por exemplo, F5 ou CTRL+T) utilizada para executar um comando de menu. Em contrapartida, uma tecla de acesso consiste numa combinação de teclas (por exemplo, ALT+F) que move o foco para um menu, comando ou controlo.) em combinação com CTRL, clicando num botão na Barra de Ferramentas de Acesso Rápido ou num grupo personalizado no friso, ou ainda clicando numa área num objecto, gráfico ou controlo. Além disso, pode executar automaticamente uma macro ao abrir um livro.

Nota    Quando o nível de segurança de macro no Excel é definido como Desactivar todas as macros sem notificação, o Excel executa apenas as macros com assinatura digital ou que estão armazenadas numa localização fidedigna, tal como a pasta de arranque do Excel no computador. Se a macro que pretende executar não tiver assinatura digital (assinatura digital: marca de segurança electrónica, baseada na encriptação, para autenticação de uma macro ou documento. Esta assinatura confirma que a macro ou documento são provenientes do signatário e que não foram alterados.) ou não estiver numa localização fidedigna (localização fidedigna: caminho de pasta ou ficheiro no computador ou localização na intranet, a partir de onde é seguro executar código. As localizações fidedignas predefinidas incluem as pastas de Modelos, Suplementos e Arranque e o utilizador pode especificar as localizações fidedignas próprias.), pode alterar temporariamente o nível de segurança para permitir todas as macros.

O que pretende fazer?


Executar uma macro

  1. Se o separador Programador não estiver disponível, proceda do seguinte modo para o visualizar:
    1. Clique no separador Ficheiro, clique em Opções e clique na categoria Personalizar Friso.
    2. Na lista Separadores Principais, seleccione a caixa de verificação Programador e clique em OK.
  2. Para definir temporariamente o nível de segurança para activar todas as macros, efectue o seguinte procedimento:
  1. No separador Programador, no grupo Código, clique em Segurança de Macros.

Grupo Código no separador Programador

  1. Na categoria Definições das Macros, em Definições das Macros, clique em Activar todas as macros (não recomendado; poderá ser executado um código potencialmente perigoso) e, em seguida, clique em OK.

Nota    Para impedir a execução de código potencialmente perigoso, recomendamos que reponha quaisquer definições que desactivem todas as macros depois de concluir o trabalho com as mesmas.

  1. Abra o livro que contém a macro.
  2. No separador Programador, no grupo Código, clique em Macros.Grupo Código no separador Programador
  3. Na caixa Nome da macro, clique na macro que pretende executar.
  4. Execute um dos seguintes procedimentos:
  • Para executar uma macro num livro do Excel, clique em Executar.

Sugestão    Também pode premir CTRL+F8 para executar a macro. Pode interromper a execução da macro premindo ESC.

Início da Página Início da Página

Executar uma macro premindo uma tecla de atalho de combinação com a tecla CTRL

  1. Se o separador Programador não estiver disponível, proceda do seguinte modo para o visualizar:
    1. Clique no separador Ficheiro, clique em Opções e clique na categoria Personalizar Friso.
    2. Na lista Separadores Principais, seleccione a caixa de verificação Programador e clique em OK.
  2. No separador Programador, no grupo Código, clique em Macros.Grupo Código no separador Programador
  3. Na caixa Nome da macro, clique na macro que pretende atribuir a uma tecla de atalho de combinação com a tecla CTRL.
  4. Clique em Opções.

É apresentada a caixa de diálogo Opções de Macro.

  1. Na caixa Tecla de atalho, escreva uma letra minúscula ou maiúscula que pretenda utilizar com a tecla CTRL.

Nota    A tecla de atalho irá substituir qualquer tecla de atalho equivalente, predefinida do Excel, enquanto o livro que contém as macros estiver aberto.

Para obter uma lista de teclas de atalho de combinação com a tecla CTRL que já estejam atribuídas no Excel, consulte o artigo sobre teclas de atalho e de função do Excel (pode estar em inglês).

  1. Na caixa Descrição, escreva a descrição da macro.
  2. Clique em OK para guardar as alterações e clique em Cancelar para fechar a caixa de diálogo Macro.

Início da Página Início da Página

Executar uma macro clicando num botão na Barra de Ferramentas de Acesso Rápido

Para adicionar um botão à Barra de Ferramentas de Acesso Rápido que irá executar uma macro, efectue o seguinte procedimento:

  1. Clique no separador Ficheiro, clique em Opções e clique em Barra de Ferramentas de Acesso Rápido.
  2. Na lista Escolher comandos de, seleccione Macros.
  3. Na lista, clique na macro que criou e, em seguida, clique em Adicionar.
  4. Para alterar a imagem de botão da macro, seleccione a macro na caixa à qual foi adicionada e, em seguida, clique em Modificar.
  5. Em Símbolo, clique na imagem de botão que pretende utilizar.
  6. Para alterar o nome da macro apresentada quando colocar o ponteiro sobre o botão, escreva o nome que pretende utilizar na caixa Nome a apresentar.
  7. Clique em OK para adicionar o botão da macro à Barra de Ferramentas de Acesso Rápido.
  8. Na Barra de Ferramentas de Acesso Rápido, clique no botão da macro.

Início da Página Início da Página

Executar uma macro clicando num botão num grupo personalizado no friso

Tirando partido da capacidade de personalização do friso no Excel 2010, pode criar um grupo personalizado que apareça num separador no friso e, em seguida, atribuir uma macro a um botão nesse grupo. Por exemplo, pode adicionar um grupo personalizado denominado "As Minhas Macros" ao separador Programador e adicionar depois uma macro (que aparece como botão) ao novo grupo.

Para mais informações, consulte o artigo sobre como personalizar o friso.

Início da Página Início da Página

Executar uma macro clicando numa área num objecto gráfico

Pode criar um ponto activo num gráfico no qual os utilizadores podem criar para executar uma macro.

  1. Na folha de cálculo, insira um objecto gráfico, tal como uma imagem, ClipArt, forma ou SmartArt.

Para obter informações sobre a inserção de objectos gráficos, consulte o tópico sobre como adicionar, alterar ou eliminar formas.

  1. Para criar um ponto activo no objecto existente, no separador Inserir, no grupo Ilustrações, clique em Formas, seleccione a forma que pretende utilizar e, em seguida, desenhe a forma no objecto existente.

Grupo Ilustrações no separador Inserir

  1. Clique com o botão direito do rato no ponto activo criado e, em seguida, clique em Atribuir Macro.
  2. Execute um dos seguintes procedimentos:
    • Para atribuir uma macro existente ao objecto gráfico, faça duplo clique na macro ou introduza o respectivo nome na caixa Nome da macro.
    • Para gravar uma nova macro a atribuir ao objecto gráfico seleccionado, clique em Gravar, escreva um nome para a macro na caixa de diálogo Gravar Macro e clique em OK para começar a gravar a macro. Quando terminar de gravar a macro, clique em Terminar Gravação Imagem de botão no separador Programador no grupo Código.

Sugestão    Também pode clicar em Terminar Gravação Imagem de botão do lado esquerdo da barra de estado.

  • Para editar uma macro existente, clique no respectivo nome na caixa Nome da macro e em Editar.
  1. Clique em OK.
  2. Na folha de cálculo, seleccione o ponto activo. Tal apresenta as Ferramentas de Desenho, adicionando um separador Formatar.
  3. No separador Formatar, no grupo Estilos de Formas, clique na seta junto de Preenchimento da Forma e clique em Sem Preenchimento.

Grupo Estilos de Forma no separador Formato das Ferramentas de Desenho

  1. Clique na seta junto a Contorno da Forma e, em seguida, clique em Sem Contorno.

Início da Página Início da Página

Configurar uma macro para ser executada automaticamente ao abrir um livro

Se gravar uma macro e a guardar com o nome "Abrir_Automaticamente", a macro será executada sempre que abrir o livro que a contém. Outra forma de executar automaticamente uma macro ao abrir um livro consiste em escrever um procedimento VBA no evento Abrir do livro, utilizando o Visual Basic Editor (Visual Basic Editor: ambiente no qual é possível escrever novos códigos e procedimentos do Visual Basic for Applications e editar outros já existentes. O Visual Basic Editor contém um conjunto de ferramentas de depuração completo que permite localizar problemas de sintaxe, de tempo de execução e problemas lógicos no código.). O evento Abrir está incorporado no livro e executa o código de macro correspondente sempre que o livro é aberto.

Criar uma macro Abrir_Automaticamente

  1. Se o separador Programador não estiver disponível, proceda do seguinte modo para o visualizar:
    1. Clique no separador Ficheiro e, em seguida, clique em Opções.
    2. Na categoria Personalizar Friso, na lista Separadores Principais, seleccione a caixa de verificação Programador e, em seguida, clique em OK.
  2. Para definir temporariamente o nível de segurança para activar todas as macros, efectue o seguinte procedimento:
  1. No separador Programador, no grupo Código, clique em Segurança de Macros.Grupo Código no separador Programador
  2. Na categoria Definições das Macros, em Definições das Macros, clique em Activar todas as macros (não recomendado; poderá ser executado um código potencialmente perigoso) e, em seguida, clique em OK.

Nota    Para impedir a execução de código potencialmente perigoso, recomendamos que reponha quaisquer definições que desactivem todas as macros depois de concluir o trabalho com as mesmas.

  1. Se pretender guardar a macro com um livro específico, abra primeiro o livro.
  2. No separador Programador, no grupo Código, clique em Gravar Macro.
  3. Na caixa Nome da macro, escreva Abrir_Automaticamente.
  4. Na lista Guardar macro em, seleccione o livro onde pretende armazenar a macro.

Sugestão    Se pretender que uma macro fique disponível sempre que utilizar o Excel, seleccione No Livro Pessoal de Macros. Quando selecciona No Livro Pessoal de Macros, o Excel cria um livro pessoal de macros oculto (Pessoal.xlsb), se este ainda não existir, e guarda a macro nesse livro. No Windows Vista, este livro é guardado na pasta C:\Utilizadores\nome do utilizador\AppData\Local\Microsoft\Excel\XLStart. Se não encontrar o livro nesta localização, o mesmo poderá ter sido guardado na subpasta Roaming em vez da pasta Local. No Microsoft Windows XP, este livro é guardado na pasta C:\Documents and Settings\nome do utilizador\Application Data\Microsoft\Excel\XLStart. Os livros existentes nas pasta XLStart são abertos automaticamente sempre que o Excel é iniciado. Se pretender que uma macro no livro pessoal de macros seja executada automaticamente noutro livro, também terá de guardar esse livro na pasta XLStart para que ambos os livros sejam abertos quando o Excel for iniciado.

  1. Clique em OK e, em seguida, efectue as acções que pretende gravar.
  2. No separador Programador, no grupo Código, clique em Terminar Gravação Imagem de botão.

Sugestão    Também pode clicar em Terminar Gravação do lado esquerdo da barra de estado.

Botão Terminar Gravação na barra de estado

Notas    

  • Se optar por guardar a macro com a opção Neste Livro ou Novo Livro no passo 6, guarde ou mova o livro para uma das pastas XLStart.
  • A gravação de uma macro Abrir_Automaticamente tem as seguintes limitações:
    • Se o livro em que guardar a macro Abrir_Automaticamente já contiver um procedimento VBA no respectivo evento Open, o procedimento VBA para o evento Open irá sobrepor todas as acções na macro Abrir_Automaticamente.
    • Uma macro Abrir_Automaticamente é ignorada quando um livro for aberto, por programação, utilizando o método Abrir.
    • Uma macro Abrir_Automaticamente é executada antes de quaisquer outros livros serem abertos. Assim, se gravar acções que pretende que o Excel efectue no Livro1 predefinido ou num livro carregado a partir da pasta XLStart, a macro Abrir_Automaticamente irá falhar quando reiniciar o Excel, porque a macro é executada antes dos livros predefinido e de arranque serem abertos.

Se se deparar com estas limitações, em vez de criar uma macro Abrir_Automaticamente, tem de criar um procedimento VBA para o evento Open de acordo com a descrição na secção seguinte deste artigo.

  • Se pretender que o Excel seja iniciado sem executar uma macro Abrir_Automaticamente, mantenha premida a tecla SHIFT quando iniciar o Excel.

Criar um procedimento VBA para o evento Open de um livro

O exemplo seguinte utiliza o evento Open para executar uma macro quando o livro for aberto.

  1. Se o separador Programador não estiver disponível, proceda do seguinte modo para o visualizar:
    1. Clique no separador Ficheiro e, em seguida, clique em Opções.
    2. Na categoria Personalizar Friso, na lista Separadores Principais, seleccione a caixa de verificação Programador e, em seguida, clique em OK.
  2. Para definir temporariamente o nível de segurança para activar todas as macros, efectue o seguinte procedimento:
  1. No separador Programador, no grupo Código, clique em Segurança de Macros.Grupo Código no separador Programador
  2. Na categoria Definições das Macros, em Definições das Macros, clique em Activar todas as macros (não recomendado; poderá ser executado um código potencialmente perigoso) e, em seguida, clique em OK.

Nota    Para impedir a execução de código potencialmente perigoso, recomendamos que reponha quaisquer definições que desactivem todas as macros depois de concluir o trabalho com as mesmas.

  1. Guarde e feche todos os livro abertos.
  2. Abra o livro ao qual pretende adicionar a macro ou crie um livro novo.
  3. No separador Programador, no grupo Código, clique em Visual Basic.
  4. Na janela Project Explorer, clique com o botão direito do rato no objecto EsteLivro e, em seguida, clique em View Code.

Sugestão    Se a janela Project Explorer não estiver visível, no menu View, clique em Project Explorer.

  1. Na lista Object acima da janela Code, seleccione Workbook.

Isto cria automaticamente um procedimento vazio para o evento Open como, por exemplo:

Private Sub Workbook_Open()

End Sub
  1. Adicione as seguintes linhas de código ao procedimento:
Private Sub Workbook_Open()
    MsgBox Date
    Worksheets("Folha1").Range("A1").Value = Date
End Sub
  1. Mude para o Excel e guarde o livro como um livro com permissão para macros (.xlsm).
  2. Feche e volte a abrir o livro. Quando abrir o livro novamente, o Excel executa o procedimento Workbook_Open, que apresenta a data actual numa caixa de mensagem.
  3. Clique em OK na caixa da mensagem.

Note que a célula A1 na Folha1 também contém a data como resultado da execução do procedimento Workbook_Open.

Início da Página Início da Página

 
 
Aplica-se a:
Excel 2010