Como adiciono o VBA no MS Office?


21

Eu já vi posts mostrando respostas que usam código / macros do VBA ( Visual Basic for Applications ), no entanto, também observei comentários adicionais depois sobre como usar o VBA (como implementá-lo e executá-lo). Espero que isso ajude apenas a obter o código executado.

Então, minha pergunta é:

Eu tenho algum código VBA. Como adiciono o VBA ao meu projeto do MS Excel, Word ou Outlook?


1
Estou tentando criar uma pergunta canônica. Sinta-se à vontade para adicionar outras perguntas às quais eu possa fazer referência / podemos fechar, adicionar tags ou editar a pergunta ou a resposta para melhorá-la ou postar respostas.
Dave

Relacionado: superuser.com/q/794590/346288 - simples "kickstart" para depurar o código VBA.
Hannu

Respostas:


19

Para abrir o editor VBA em qualquer produto do Microsoft Office 1 , pressione Alt+ F11.

Em seguida, você precisa determinar como deseja que seu VBA seja implementado. Deseja que seja acionado por algum evento no software, como o arquivo sendo salvo ou a seleção na planilha sendo alterada? Ou você deseja executar o código você mesmo quando quiser?

Se for o primeiro, dê uma olhada no Project Explorer e encontre o projeto associado ao arquivo no qual você está trabalhando atualmente.

Se você deseja que seu código seja acionado por um evento associado a uma planilha específica (por exemplo, o código deve ser executado toda vez que um valor for alterado na Planilha1), clique duas vezes no objeto de planilha específico listado no Explorador de Projetos. Isso abrirá uma caixa de texto onde você pode colar o código. Se o evento estiver associado a toda a pasta de trabalho em vez de uma planilha específica (por exemplo, o código deve ser executado quando a pasta de trabalho for salva), clique duas vezes no ThisWorkbookobjeto no Explorador de Projetos.

Se, no entanto, você não deseja que seu código seja acionado por um evento, coloque o código em um módulo. Se houver outro código no documento ou pasta de trabalho, digamos de uma macro gravada, ele aparecerá em um módulo. Se houver um módulo existente, na maioria dos casos, você deseja colar seu código no mesmo módulo abaixo de qualquer código existente. Os módulos existentes serão listados no Project Explorer.

Se nenhum módulo existir, você precisará inserir um novo. Para fazer isso, escolha Moduleno Insertmenu suspenso na janela do editor VBA. Isto irá inserir um novo módulo e exibir uma janela de texto dentro da janela do editor. Cole seu código lá.

Se você deseja executar o código em um módulo, você tem algumas opções. Uma é executar o código na janela do editor VBA. Você pode simplesmente colocar o cursor em algum lugar do código que deseja executar e pressionar F5, ou clicar no botão Ícone "reproduzir" - triângulo verde apontando para a direita(Executar) na barra de ferramentas abaixo da barra de menus, para executar o código.

Outra opção é usar a Macroscaixa de diálogo. Para abri-lo, siga um destes procedimentos:

  • na Viewguia da faixa de opções, no Macrospainel (extrema direita), clique no Macrosbotão
  • na Developerguia, no Codepainel (extrema esquerda), clique no Macrosbotão
  • pressione Alt+F8

A caixa de diálogo fica assim:

insira a descrição da imagem aqui

No exemplo acima, você pode executar YourCodepor

  • selecionando-o na lista e clicando Runou
  • selecionando-o na lista e clicando duas vezes nele.

______
1 De acordo com Posso usar o VBA no Excel 2010 Starter Edition? , você não pode usar o VBA no Excel 2010 Starter Edition.


4

Essas etapas são realizadas no Office 2010 (exceto onde indicado em contrário), mas devem ser semelhantes o suficiente para 2007 e 2013. Estou fazendo isso com o Excel, mas as diferenças devem ser sutis.

A primeira etapa é adicionar a guia Desenvolvedor à faixa de opções.

No Office 2007,

  1. Clique em “Menu Office” -> “ Opções (Programa) ”. ("Menu Office" refere-se ao Botão de escritóriobotão no canto superior esquerdo.) Isso exibe um menu que possui um botão "Opções do Excel", "Opções do Word" etc. na parte inferior.

  2. Na caixa de diálogo das opções, marque a opção "Mostrar guia Desenvolvedor na faixa de opções" Menu do escritório e clique em "OK".

  3. Sua nova guia "Desenvolvedor" deve estar aparecendo.

No Office 2010 e 2013,

  1. Clique em Arquivo -> Opções .

  2. Escolha Personalizar fita .

  3. No lado direito, localize Developer e marque a caixa. Clique em OK .

  4. Sua nova guia deve aparecer, clique nela e, em seguida, clique em Visual Basic .

Uma tela assustadora é exibida, que é a janela de edição de código VBA.

Nota lateral : Você também pode abrir a janela de edição de código VBA usando o atalho de teclado Alt+ F11(mesmo que a guia Desenvolvedor não esteja aparecendo).

Dentro da janela de edição de código, no lado esquerdo, você deve ter um painel chamado Project-VBAProject. Nesse contexto, nos Objetos do Microsoft Excel (esse nome é diferente dependendo do programa (Word, Outlook etc.) que você está usando) é uma "coisa" chamada ThisWorkbook. Clique duas vezes em ThisWorkbook

Neste exemplo, usaremos o seguinte código.

sub WarnMeOfDanger()
   MsgBox "Argh, a dragon is behind you!"
end sub 

Tudo o que foi feito acima é mostrar, abrir uma caixa de diálogo para mostrar uma mensagem na tela.

Copie o código e cole-o na folha em branco na janela de edição de código do VBA.

Agora, na parte superior da janela do editor de código VBA, clique no botão verde de reprodução e você verá uma mensagem.

Então, toda vez que você quiser executar o código, retorne a esta tela e pressione play!

No entanto, você pode preferir adicionar seu próprio botão. Se você deseja adicionar um botão, observe primeiro a primeira linha do código WarnMeOfDanger(). Este é realmente o nome da nossa ' sub-rotina '. Lembraremos disso para mais tarde. Agora, basta fechar a janela que você está usando (o código é salvo automaticamente).

Ainda na faixa de opções Desenvolvedor, clique em Inserir e escolha o primeiro item, que é um botão. O cursor do mouse se torna uma pequena cruz (sem raiva, quero dizer, sua aparência). Desenhe o tamanho do botão. Uma nova janela aparece e deve nos mostrar a opção de atribuir o botão a uma função. Nesse caso, deveríamos ver algo parecido ThisWorkbook.WarnMeOfDanger. Clique sobre isso e clique em OK .

Agora, se você pressionar seu novo botão, a mensagem será exibida. Clique com o botão direito do mouse no botão para obter opções para movê-lo, alterar o texto, redimensionar etc.


Perguntas e respostas da mesma pessoa? Estranho .......
Prasanna

2
@ Pasanna, quando você faz uma pergunta, tem a opção de respondê-la imediatamente. Lembre-se de que é um site de perguntas e respostas, desde que seja relevante e útil, acho que é aceito. Existem alguns deles por aí.
Dave

Eu não sabia disso até agora. Obrigado pela informação
Prasanna

2
Você pode substituir as primeiras etapas para acessar a janela de código com um simples "Alt + F11". :)
Ƭᴇcʜιᴇ007

@ Ƭᴇcʜιᴇ007, sinta-se livre para editar afastado :) +1
Dave
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.