Usando VBA
Usando 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.
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.
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:
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 ?
Object Browser
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:
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:
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.
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 )
Para ver como usar os agentes leia o artigo - Usando os Agents da Microsoft no
Visual Basic .