Atribuir uma macro a um formulário ou a um botão de controlo

Aplica-se A
Excel para Microsoft 365 Excel para Microsoft 365 para Mac Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 para Mac Excel 2019 Excel 2016

Pode utilizar um botão de controlo de formulário ou um botão de comando (um controlo ActiveX) para executar uma macro que execute uma ação quando um utilizador clicar no mesmo. Ambos os botões também são conhecidos como botão de premir, que pode ser configurado para automatizar a impressão de uma folha de cálculo, filtrar dados ou calcular números. Em geral, um botão de controle de formulário e um botão de comando de controle ActiveX são semelhantes em aparência e função. No entanto, eles têm algumas diferenças, que são explicadas nas seções seguintes.

Sugestão

As informações incluídas neste artigo destinam-se a utilizadores avançados do Excel. Para obter mais informações sobre macros, aceda a Adicionar ou editar uma macro para um controlo numa folha de cálculo.

Button (controlo de formulário)
Exemplo de um controlo de botão da barra de ferramentas Formulários
Botão de comando (controlo ActiveX)
Exemplo de um controlo de botão de comando ActiveX

Nas secções abaixo, saiba como adicionar uma macro a um botão no Excel, para Windows ou Mac.

Nota

Os controlos ActiveX não são suportados no Mac.

As macros e as ferramentas do VBA encontram-se no separador Programador , que está oculto por predefinição.

O primeiro passo é ativá-lo. Para obter mais informações, consulte o artigo: Mostrar a guia Desenvolvedor.

Separador Programador no friso

Adicionar um botão (controlo de formulário)

  1. No separador Programador , no grupo Controlos , clique em Inserir e, em seguida, em Controlos de Formulário, clique em Imagemde Botão .
  2. Clique na localização da folha de cálculo onde pretende que o canto superior esquerdo do botão seja apresentado. É apresentada a janela de pop-up Atribuir Macro .
  3. Atribua uma macro ao botão e, em seguida, clique em OK.
  4. Para especificar as propriedades de controlo do botão, clique com o botão direito do rato no botão e, em seguida, clique em Formatar Controlo.

Adicionar um botão de comando (controlo ActiveX)

  1. No separador Programador, no grupo Controlos, clique em Inserir e, em seguida, em Controlos ActiveX, clique em Imagem do Botão deComando.

  2. Clique na localização da folha de cálculo na qual pretende que o canto superior esquerdo do botão de comando seja apresentado.

  3. No grupo Controles , clique em Exibir Código. Isto inicia o Visual Basic Editor. Certifique-se de que Click é selecionado na lista suspensa à direita. O procedimento sub CommandButton1_Click (veja a figura abaixo) executa estas duas macros quando o botão é clicado: SelectC15 e HelloMessage.
    Um procedimento Sub no Visual Basic Editor

  4. No subprocedimento do botão de comando, efetue um dos seguintes procedimentos:

    • Introduza o nome de uma macro existente no livro. Pode localizar macros ao clicar em Macros no grupo Código . Pode executar múltiplas macros a partir de um botão ao introduzir os nomes das macros em linhas separadas dentro do subprocedimento.
    • Se necessário, adicione o seu próprio código VBA.
  5. Feche o Visual Basic Editor e clique na imagem do botão Modo deDesign para garantir que o modo de design esteja desativado.

  6. Para executar o código VBA que agora faz parte do botão, clique no botão de comando ActiveX que acabou de criar.

  7. Para editar o controlo ActiveX, certifique-se de que está no modo de estrutura. No separador Programador , no grupo Controlos , ative o Modo de Estrutura.

  8. Para especificar as propriedades de controle do botão de comando, na guia Desenvolvedor, no grupo Controles, clique na imagem do Botão de Propriedades . Também pode clicar com o botão direito do rato no botão de comando e, em seguida, clicar em Propriedades.

    Nota

    Antes de clicar em Propriedades, verifique se o objeto para o qual você deseja examinar ou alterar propriedades já está selecionado.

    A caixa Propriedades é exibida. Para obter informações detalhadas sobre cada propriedade, selecione a propriedade e, em seguida, prima F1 para apresentar um tópico da Ajuda do Visual Basic. Também pode escrever o nome da propriedade na caixa Pesquisa da Ajuda do Visual Basic. A tabela seguinte resume as propriedades disponíveis.

Se pretender especificar Utilize esta propriedade
Geral:
Se o controlo é carregado quando o livro é aberto. (Ignorado para os controlos ActiveX.) Carregamento Automático (Excel)
Se o controlo pode receber o foco e responder a eventos gerados pelo utilizador. Ativado (Formulário)
Se o controlo pode ou não ser editado. Locked (Formulário)
O nome do controlo. Nome (Formulário)
A forma como o controlo está anexado às células abaixo do mesmo (flutuante, mover mas não dimensionar, ou mover e redimensionar). Posicionamento (Excel)
Se o controlo pode ou não ser impresso. PrintObject (Excel)
Se o controlo está visível ou oculto. Visível (Formulário)
Texto:
Atributos de tipo de letra (negrito, itálico, tamanho, rasurado, sublinhado e espessura). Negrito, Itálico, Tamanho, Rasurado, Sublinhado, Peso (Formulário)
Texto descritivo no controlo que o identifica ou descreve. Legenda (Formulário)
Se os conteúdos do controlo são moldados automaticamente no final de uma linha. WordWrap (Formulário)
Tamanho e posição:
Se o tamanho do controlo se ajusta automaticamente para apresentar todo o conteúdo. Redimensionar Automaticamente (Formulário)
A altura ou largura em pontos. Altura, Largura (Formulário)
A distância entre o controlo e o limite esquerdo ou superior da folha de cálculo. Esquerda, Superior (Formulário)
Formatação:
A cor de fundo. BackColor (Formulário)
O estilo de fundo (transparente ou opaco). BackStyle (Formulário)
A cor do primeiro plano. ForeColor (formulário)
Se o controlo tem uma sombra. Sombra (Excel)
Imagem:
O bitmap a ser exibido no controle. Imagem (Formulário)
A localização da imagem em relação à sua legenda (esquerda, superior, direita, etc.). PicturePosition (Formulário)
Teclado e rato:
A tecla de atalho do controlo. Acelerador (formulário)
Um ícone de rato personalizado. MouseIcon (Formulário)
O tipo de ponteiro que é exibido quando o usuário posiciona o mouse sobre um objeto específico (padrão, seta, cursor I e assim por diante). MousePointer (formulário)
Se o controlo retira o foco ao clicar. TakeFocusOnClick (Formulário)

Precisa de mais ajuda?

Pode sempre colocar uma pergunta a um especialista da Comunidade Tecnológica do Excel ou obter suporte nas Comunidades.

Consulte Também