0% acharam este documento útil (0 voto)
64 visualizações7 páginas

Usando VBA

O documento discute o uso da linguagem VBA (Visual Basic for Applications) para automatizar tarefas nos aplicativos do Microsoft Office. Ele explica como gravar macros no Word, Excel e PowerPoint usando o gravador de macros, que gera código VBA, e como usar o Object Browser e agentes (assistentes) do Office para aprender sobre objetos e métodos VBA.

Enviado por

Michelle Pacheco
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
64 visualizações7 páginas

Usando VBA

O documento discute o uso da linguagem VBA (Visual Basic for Applications) para automatizar tarefas nos aplicativos do Microsoft Office. Ele explica como gravar macros no Word, Excel e PowerPoint usando o gravador de macros, que gera código VBA, e como usar o Object Browser e agentes (assistentes) do Office para aprender sobre objetos e métodos VBA.

Enviado por

Michelle Pacheco
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 7

Usando VBA - Visual Basic for Aplications

Trabalhando com VBA

Você já ouviu falar em Visual Basic for Aplications(VAB) ? Você alguma vez já
utilizou VBA ? Bem , se você já desenvolveu algum projeto usando Visual Basic
podemos dizer que já usou VBA, pois muito da funcionalidade existente no Visual
Basic é na verdade VBA. Muitas funções matématicas tais como Sqr(), Sin() , Tan() são
VBA. Muitas funções para conversão e tratamento de strings tais como :Cstr(), Cint() e
CDbl() , Left() , Mid(), Format() são VBA.

A partir da versão 97 do Office toda suite Microsoft (incluido ai o Project ) incluiu o


VBA como linguagem embutida. E daí ? você pode estar se perguntando. E daí !!! Ora,
com o VBA a aplicação está apta a expor toda a sua funcionalidade de maneira a
permitir que outras aplicações a acessem via VBA. Ou seja, podemos acessar toda a
funcionalidade do Word, Excel , PowerPoint, Access através do Visual Basic graças ao
VBA.

Para trabalhar com VBA você usa a mesma interface , o Ambiente de Desenvolvimento
Integrado (IDE). No Office o IDE é chamdo de Visual Basic Editor. Voce pode acessar
o Visual Basic Editor no Word, Excel e PowerPoint selecionando o menu Ferramentas
e a opção Macro clicando a seguir em Editor do Visual Basic (ou Alt+F11). No Access
97 , para acessar o Visual Basic Editor , selecione o menu Inserir e clique em Módulo.

Visual Basic Editor

Para você utilizar o VBA de maneira a realizar tarefas usando os aplicativos do pacote
Office você vai ter que conhecer os objetos residentes em cada aplicativo Office.Fazer
isto seria uma tarefa árdua, mesmo para um programador experiente. Mas sempre existe
uma maneira mais fácil de se realizar uma tarefa e neste caso temos uma ferramenta que
permite a você compreender os vários objetos presentes nos aplicativos Office como
também permite a você escrever código VBA quase que intuitivamente. Não acredita
???? Estamos falando do Gravador de Macros.

Escrever macros no Microsoft Office é a mesma coisa que escrever uma procedure em
VBA e quando você usa o Gravador de Macros você atribui um nome á macro que
quer gravar e isto nada mais é que dar um nome a uma procedure. Depois que você
gravar a macro ao visualizar o código associado à macro você verá o nome da macro
atribuida ao mome da procedure. Vamos mostrar isto, veja o exemplo a seguir:

Criando uma Macro para inserir uma linha de texto no Word

1. Abra um documento do Word


2. Do menu Ferramentas , selecione Macro e a seguir a opção Gravar
Nova Macro

3. Na janela de diálogo Gravar Macro , digite um nome para a macro e


selecione o Documento1(documento) para que a macro não seja gravada
em normal.dot clicando a seguir em OK.
4. Você voltará ao documento e a barra de ferramentas do gravador surgirá
supensa no documento. Digite a linha : Teste de inclusão de linha (ou
outra coisa qualquer) e tecle ENTER.

5. Finalmente clique no botão Parar Gravação da Macro e , para ver o


código gerado, selecione a opção Ferramentas => Macros... clicando a
seguir em Editar . Você verá o seguinte código:

O código necessário para digitar(TypeText) uma linha e inserir(TypeParagraph) uma


linha em branco está mostrado acima.

Percebeu agora como você pode explorar esta ferramenta para escrever código para
realizar tarefas e a seguir copiar e colar o código para uma aplicação Visual Basic ?

Usando o Object Browser


Outra maneira de aprender sobre os objetos, métodos , propriedades e seus eventos e
usar o Object Browser. Para acionar o object Browser estando no Visual Basic Editor
pressione a tecla F2.(Figura abaixo)

Object Browser

Usando VBA para programar os assistentes do Office


(Agents)
Antes que você durma no teclado vamos começar a mostrar algo prático usando VBA.
Vamos trabalhar com os 'Office Assistants' - Os Assistentes do Office . Se você ainda
não se tocou ai vai uma dica : Voce lembra daquele Clip (chato) que ao abrir o Word
aparece na tela mostrando a sua carinha ? Ele é um assistente . Além dele temos o
Pingo, o Gênio, o Robo, o SuperDoc , o Office Logo, o Rabisco e o William. (nossa !!).
Pois é, eles são objetos e como objetos possuem propriedades e métodos . Agora a boa
notícia : 'Podemos programar os assistentes' manipulando suas propriedades e métodos.

Vamos programar nosso primeiro assistente. Iremos usar o Clip , pois os demais não
estão disponíveis . (Se você quiser se desenvolver nesta área visite
www.microsoft.com/msagent ) .

1. Vamos fazer com que o Clip realize uma ação. As ações dos agentes já
estão definidas , bastando selecionar o agente e selecionar a ação
desejada. Iremos fazer com que o Clip dê aquele estalo. Digite o código
mostrado na figura a baixo e clique no botão Executar:
Temos basicamente o seguinte no código acima:

● Definimos o assistente - With Assistant


● Tornamos o assistente visível - Visible
● Definimos a ação(Animation) que o assistente irá realizar (você pode
testar as demais animações...)

Simples ? É VBA...

Voce pode criar um efeito mais completo inserindo os balões de texto (aqueles das
histórias em quadrinhos - Já leu gibi algum dia...). A seguir temos um exemplo :
Na procedure Quadrinhos fizemos o seguinte:

● Definimos uma variável do tipo Balloon


● Criamos um balloon vazio usando o método NewBallon
● Definimos o título do balão -> Heading = " JcmSoft - Visual Basic "
● A seguir criamos a mensagem usando a propriedade Text.
● A última ação é tornar o balão visível - Show

Para terminar o assunto iremos usar alguns recursos para mostrar que isto não é apenas
uma brincadeira. E se você esta pensando - "Aonde eu vou usar isto ? " , eu lhe dou
algumas dicas: Um assistente, um Help diferenciado enfim esse pode ser aquele Ás
guardado na manga que vai diferenciar a sua aplicação. Entendeu ? Bem vamos ao
último exemplo. Nele agente irá solicitar a intervenção do usuário e conforme a sua
escolha irá mostrar uma mensagem diferente.

Parte 1 - O agente mostra as opções e aguarda a ação do usuário.

Function backup()
Dim balao As Balloon
Dim texto As String
Dim cabecalho As String
Set balao = Assistant.NewBalloon
With balao
.Heading = " Backup do sistema "
.Text = " Selecione a opção "
.Labels(1).Text = "Fazer backup
agora."
.Labels(2).Text = "Deixar para
depois."
.BalloonType = msoBalloonTypeButtons
.Button = msoButtonSetNone
backup = .Show
End With
End Function
O resultado do
O codigo VBA
processamento

Aqui usamos a propriedade BalloonType para definir o tipo de balão com botões
(msoBalloonTypeButtons) , e que mais nenhum botão adicional é usado ( .Button =
msoButtonSetNone )

Parte 2 - Conforme a seleção do usuário o agente exibe uma mensagem diferente:


Sub mostra_selecao()
Select Case backup()
Case 1
texto = "Muito Bem! Um homem previnido
conserva o seu emprego"
cabecalho = ""
Case 2
texto = "Quem nao faz backup um dia se
arrepende ! "
cabecalho = " Voce conhece a lei de Murphy ?
"
End Select
With Assistant.NewBalloon
.Heading = cabecalho
.Text = texto
.Mode = msoModeAutoDown
.Show
End With
End Sub
O código VBA O resultado

Neste código , conforme a seleção do usuário , as variáveis texto e cabeçalho são


definidas e exibidas no balão . O modo de exibição msoModeAutoDown , faz com que
o agente desapareça ao clicarmos fora de sua janela.

Para ver como usar os agentes leia o artigo - Usando os Agents da Microsoft no
Visual Basic .

Até o próximo artigo... ;-)

Você também pode gostar