Vous êtes sur la page 1sur 20

Introduo

P
rimeiro, meus cumprimentos aos programadores do Excel
Obrigado por comprar meu livro. Neste livro voc encontrar, de maneira
fcil e rpida, um jeito agradvel de descobrir os prs e contras do aplica-
tivo Excel da Microsoft. Mesmo que voc no tenha conhecimento sobre
programao, este livro pode ajud-lo a no se perder nas teias do Excel
(bem, isto talvez possa levar algum tempo).
Diferentes de alguns livros de programao, este livro escrito claramente,
onde qualquer um pode compreende-lo, pois est cheio de informaes,
fatos diversificados, e sem muita lenga-lenga.
Este o Livro Certo?
Se for nessas grandes livrarias, encontrar muitos livros sobre Excel, poucos
so os que considero. Se fizer uma rpida pesquisa, pode ajud-lo a encon-
trar qual livro realmente o melhor para voc. Este livro desenvolvido
para avanar o intermdio dos usurios que querem se tornar peritos em
programao do Visual Basic(VBA) e mais:
desenvolvido para avanar o intermdio dos usurios que querem
se tornar peritos em programao do Visual Basic(VBA) e mais:
No necessita experincia em programao.
Abrange os comandos mais usados.
apropriado para o Excel 2007.
Tem at figuras que podem fazer voc sorrir.
Caso esteja usando o Excel 2000, XP ou 2003 este livro no servir. O excel
2007 diferente dessas verses anteriores. Caso esteja usando as verses
anteriormente citadas procure livros respectivos a elas.
Este livro no aprofundado. Caso esteja buscando algo mais aprofundado,
segue, abaixo, alguns livros sugestivos que foram todos publicados pela Wisley:
Excel 2007 para Dummies, escrito por Greg Harvey.
Excel 2007 Bblia, escrito por John Walkenbach (isso mesmo, sou eu).
Excel 2007 Referncias Rpidas para Dummies, escrito por John
Walkenbach (eu novamente) e por Colin Banfield.
2 Programando o Excel 2007 VBA para Leigos
Veja bem, o ttulo deste livro no : O Guia completo para Excel VBA pro-
gramao para Leigos. No ressalto todas as expectativas de programao
do Excel, provavelmente voc no queira saber tudo sobre. No caso de um
suporte mais aprofundado sobre programao do Excel, voc deve tentar
o livro Microsoft Excel 2007 Power Programao com VBA escrito por John
Walkenbach tambm publicado pela Wisley.
Ento Voc Quer Ser Um Programador
Alm de ganhar dinheiro para pagar minhas contas, minha principal meta
em escrever este livro mostrar aos usurios de Excel como usar a lingua-
gem VBA, uma ferramenta significante que ajuda voc a aumentar o poder
de manipulao das palavras mais populares de programao.
Se voc como a maioria dos usurios de computadores, a palavra progra-
mao forma uma imagem na sua cabea de uma pessoa que aparente-
mente no se parece com voc. Acontece isso com algumas palavras que
ouvimos, como, por exemplo, nerd, hacker, superdotado...
Os tempos mudaram. Programar computador tem se tornado mais fcil
e as pessoas engajadas nesta atividade so agora chamadas de normais.
Programar simplesmente despejar ordens (comandos) que o computador
automaticamente cumprir. Programar o Excel refere-se instru-lo a fazer
automaticamente coisas que normalmente voc faz manualmente, poupan-
do bastante tempo (eu espero) e reduzindo erros. Poderia ir mais alm, mas
preciso guardar melhores informaes para o primeiro captulo.
Se leu at aqui, seguramente se tornar um programador de Excel. Isso
pode ser algo que vem de voc ou (que o mais provvel) algo que seu
chefe decide. Quando terminar este livro, honestamente possa dizer: opa,
com certeza, agora sim sou um programador de Excel ou talvez eu j tenha
falado o suficiente para sentir-se como um idiota na prxima e inesperada
conferncia cheia de aficionados por Excel.
Preocupar Por Qu?
A maioria dos usurios nunca se preocupou em explorar a programao
VBA. Seu interesse nisso o limitar no meio de um grupo elitizado. Bem-vin-
do ao vinco! Se voc no est convencido ainda em aprender Excel, tenho
algumas boas razes do porque voc quer aprender programao VBA.
Isso far voc mais competitivo no mercado de trabalho. Gos-
tando ou no os aplicativos da Microsoft so extremamentes popula-
res. Provavelmente notou que em todos os aplicativos da Microsoft
usado VBA.
Isso far com que voc extria o mximo do software (ou, que
o mais provvel, extrair o mximo de seus funcionrios). Usar
Introduo 3
o Excel sem conhecimento de VBA o mesmo que comprar uma TV
e program-la apenas para assistir um canal.
Isso far melhorar sua produtividade (possivelmente). Aprender
VBA definitivamente leva tempo, mas far com que fique mais seguro
e mais produtivo.
divertido (bem, algumas vezes). Algumas vezes o pessoal real-
mente se diverte programando o Excel a fazer coisas que praticamen-
te so impossveis. Quando voc terminar de ler este livro, ser uma
dessas pessoas (far parte desse grupo).
Agora voc est convencido?
O Que Presumo Sobre Voc
Pessoas que escrevem livros tem o hbito de ter um pblico-alvo em mente.
Para este livro, meu pblico-alvo um conglomerado de usurios que
conheci durante esses anos (alguns pessoalmente e outros pela internet).
Segue, abaixo, descrito minhas hipteses sobre o pblico-alvo:
Voc tem acesso a computadores no seu trabalho e provavelmente
em casa tambm.
Sucessivamente acessa o Excel.
J deve ter usado muitos computadores durante anos.
Frequentemente usa o Excel no trabalho.
Precisa do Excel para fazer coisas que ultimamente no pode fazer.
Tem pouca ou nenhuma experincia em programao.
Realmente entende que o sistema de ajuda do Excel til. Encare
isto, o livro no cobre tudo. Se voc souber utilizar claramente o
sistema de ajuda do Excel, estar preparado para resolver e esclarecer
suas prprias dvidas.
Se voc no tem pacincia para livros de computadores cansativos e
tem que concluir um trabalho.
Seo das Convenes Tipogrficas
Obrigatria
Todos os livros de computador tem essa seo obrigatria (alguma lei fede-
ral exige isso, eu acho). Leia ou pule.
4 Programando o Excel 2007 VBA para Leigos
Combies como Ctrl+Z, que significa que voc tem que manter pressiona-
do uma tecla enquanto pressiona outra, no caso do Ctrl+Z, significa manter
o Ctrl pressionado enquanto pressiona a tecla Z
Para o conjunto de comandos, uso caractersticas distintas. Por exemplo,
para abrir meus arquivos, uso o comando:
Abrir a Arquivo
Ateno, no Excel 2007 no existe essa coisa de um menu "arquivo" visvel na
tela. De fato, o menu arquivo foi substitudo pelo OFFICE que foi implementa-
do e chamado de Faixa de Opes. Todo texto que voc dever digitar apare-
cer em negrito. Por exemplo, se eu disser, digite: =SUM(B:B) na clula A1.
Programar no Excel envolve em desenvolver comandos, significa prescrever
instrues no Excel.Todos os cdigos aparecem em um nico espao,igual este:
Range (A1:A12).Select
Alguns cdigos so to grandes que no cabem em uma nica clula.
Nesses casos, uso o padro caracteriticamente sequencial VBA: um espao
seguido por um caracter de sublinhado por exemplo:
Selection.PasteSpecial Paste:=xlValues, _
Operation:=xlNone, SkipBlanks:=False, _
Transpose:=False
Quando entrar com este cdigo, voc pode digitar comandos grandes em
um nico espao.
Prepare Sua Segurana
Vivemos em um mundo cruel.Sempre aparecem pessoas tentando tirar van-
tagens ou causando algum tipo de transtorno.Voc provavelmente sabe que
existem vrus de computadores que causam um estrago no sistema operacional.
Voc sabia que nos arquivos do Excel pode residir um vrus? verdade,relati-
vamente pode se criar facilmente vrus usando VBA.Um desconhecido usurio
pode abrir um arquivo do Excel e espalhar um vrus nos trabalhos do Excel.
Durante esses anos, a Microsoft considerou muito sobre esta queto de
segurana. Isso bom, mas o usurio do Excel tem que entender clara-
mente como funciona. Voc pode conferir o sistema de configurao
de segurana do Excel usando OfficeaOpes do ExcelaCentral de
ConfiabilidadeaConfiguraes da Central de Confiabilidade. Se voc clicar
nas configuraes macros, suas opes sero:
Desabilitar todas as macros sem notificao: macros no funcio-
naro, independente do que voc faa.
Desabilitar todas as macros com notificao: quando voc abrir
a planilha de trabalho com macros, ver uma barra de mensagem
Introduo 5
abrindo uma opo onde voc pode ativar macros, ou (se o VBE
est aberto), aparecer uma mensagem perguntando se quer ativar
macros.
Desabilitar todas as macros, exceto as digitalmente assinadas:
s permitido o funcionamento de macros se assinadas digitalmente.
Habilitar todas as macros (no-recomendado, cdigos possivel-
mente perigosos podem ser executados)
Imagine.Voc passou uma semana se matando fazendo um VBA, programa
que revolucionar a empresa onde trabalha.Voc testou o programa e en-
viou para o seu chefe. Logo em seguida, ele liga reclamando que sua macro
no faz nada de nada. O que est acontecendo? Pode ser que as configura-
es de segurana do seu chefe no permitam a execuo de macros. Ou,
talvez ele escolheu, quando abrir algum arquivo as macros desativam-se.
Pense nisso! S porque o Excel trabalha com macro, no garantido que
sempre as macros sero executadas. Tudo isso depende da configurao de
segurana e o que o usurio escolher quando ativar e desativar macros.
Ou seja, para trabalhar na planilha, voc precisar ativar macros para os
arquivos que trabalhar. Meu conselho usar o plano configurao de
segurana, assim, quando abrir um arquivo que criou, voc simplesmente
ativa as macros. Se voc abrir um arquivo, enviado por uma pessoa que no
conhece, deve desativar as macros e verificar o cdigo VBA para assegurar
se no contm nada destrutivo ou suspeito.
Como Este Livro Organizado
Dividi este livro em seis importantes partes, onde existem vrios captulos.
Embora tenha organizado os captulos em clara sequencia, voc pode ler
em qualquer ordem que desejar. Antecipo rapidamente o que est armaze-
nado para voc.
Parte I: Introduo VBA
Parte que foi dividida em dois captulos. No primeiro captulo, introduzo
a linguagem VBA. No segundo captulo, fao voc suar, levando-o para um
tour pelo VBA.
Parte II: Como VBA Trabalha com Excel
Escrevendo este livro, suponho que voc deve saber como usar o Excel. Os
quatro captulos da parte II mostram mais claro como o VBA implementa o
6 Programando o Excel 2007 VBA para Leigos
Excel. Esses captulos so todos de extrema importncia, ento recomendo
que no pule eles, ta bom?
Parte III: Programando Conceitos
Os oito captulos que esto na parte III no deixaro escapar o que real-
mente programao. Talvez no precise de todas essas informaes, mas
voc estar grato por elas estarem a quando precisar.
Parte IV: Comunicao com seus usurios
Uma das partes mais legais de programar no Excel de desenvolver caixas de
dilogos (bem, eu pelo menos gosto). Os captulos da parte IV mostram como
criar caixas de dilogos que se parecem prpria do software da Microsoft.
Parte V: Organizando-se
Os captulos da parte V ordenam informaes que precedem os captulos.Voc
descobrir como personalizar seu Excel em relao ao uso,desenvolver funes
de orientao e at trabalhar em conjunto com outro aplicativo do OFFICE.
Parte VI: A Parte dos Dez
Tradicionalmente, a srie de livros para Leigos contei uma parte final que
consiste de pequenos captulos informativos. Por eu no ser to tradicional,
este livro tem dois captulos que voc pode usar se lhe convm (se voc for
igual maioria dos leitores, comear por esta parte.)
cones Usados Neste Livro
Em alguma parte, uma empresa fez uma pesquisa de Mercado e obteve que
suas publicaes venderiam mais livros para computadores se adicionas-
sem cones nas margens do livro. cones so essas pequenas figuras ilustra-
tivas que supostamente chamam sua ateno para alguns detalhes, e ajuda
voc a decidir o que vale pena ler.
No sei se esta indagao realmente vlida, mas no tenho outra escolha
a no ser faz-la. Ento, aqui esto os cones que encontrar de frente para
trs e de trs para frente:
Quando ver este cone, o cdigo a ser discutido est na Web.
Baixe isso e elimine os lotes de digitao. Veja: obter o arquivo de exemplo
abaixo, para mais informaes.
Introduo 7
Este cone mostra materiais que voc deve considerar tcnicos. Voc pode
at achar isto interessante, mas pode tranquilamente nem ligar para eles, se
estiver com pressa.
No escape de informaes marcadas com este cone. Isso identifica ata-
lhos que podem encurtar bastante tempo (e talvez at possa permitir que
saia mais cedo do trabalho).
Este cone diz a voc que precisa de informaes aprofundadas para serem
usadas mais tarde.
Interpretar qualquer coisa marcada com este cone. De outra maneira, voc
talvez arrebente seu computador, acontea uma fuso nuclear ou talvez
arrune todo o seu dia de trabalho.
Apresentar Amostras de Arquivos
Este livro tem sua prpria pgina na Internet onde voc pode baixar exem-
plos de arquivos discutidos e ver bnus de captulos. Para conseguir esses
arquivos, v ao endereo:
www.paraleigos.com.br
Tendo um arquivo simples que lhe salvar bastante tempo de digitao.
Melhor ainda, voc pode brincar mudando as alteraes. Na verdade,
recomendo usar esses arquivos. Experimentando a melhor forma para
dominar VBA.
Para Onde Ir Daqui em Diante?
Ler as instrues foi seu primeiro passo. Agora, hora de fazer acontecer e
se tornar um programador.
Se for um programador amador. Seguramente sugiro a voc comear pelo
captulo 1 e ir progredindo captulo a captulo. Captulo 2 d a voc experi-
ncias que voc se ilude, achando que est progredindo rapidamente.
Mas, um pas livre (pelo menos era quando escrevi este livro), no quero
soletrar para voc Computer Book Police seja qual for suas necessidades,
espero que se divirta lendo este livro, assim como me diverti escrevendo-o.
L
E
M
B
R
E
-SE
D
I
C
A
C
U
I
D
A
DO!
E
Q
U
I
P
E
T
CN
IC
A
8 Programando o Excel 2007 VBA para Leigos
Parte I
Introduzindo VBA
A 5 Onda por Rich Tennant
Isso aqui
impressionante! E voc
diz que s programar
para costurar a
inciso, que mais tarde
ficar boa?
Nesta parte...
T
odos os livros comeam a partir de um ponto. Este aqui comea
introduzindo a voc o Visual Basic Aplications (tenho certeza que
voc se tornar muito amigvel com o livro depois de alguns captulos
lidos). Depois da introduo, o captulo 2 levar voc real vida da
programao Excel.
Captulo 1
O Que VBA ?
Neste captulo:
Aumento da concepo geral do VBA
Encontra o que pode-se fazer com VBA
Descobre as vantagens e desvantagens de usar VBA
Uma pequena aula de historia sobre o Excel
E
ste captulo traz um complemento para qualquer material de treina-
mento. Entretanto, contm informaes que auxiliar voc a se tornar
um programador do Excel. Em outras palavras, este captulo pavimenta os
caminhos e faz com que voc programe o Excel, do comeo ao fim.
Tudo Bem, Ento O Que VBA?
VBA, que so as siglas para Visual Basic Applications, uma linguagem de
programao desenvolvida pela Microsoft, voc conhece, a companhia
que pertence ao homem mais rico mundo. O Excel, junto com outros
programas do Microsoft Office 2007, inclui a linguagem VBA (sem cobrar
nenhuma taxa). A linguagem VBA uma ferramenta que pessoas como
voc e eu usamos para desenvolver programas que controlam o Excel.
Imagine um rob inteligente que saiba tudo sobre o Excel. Esse rob pode
ler instrues e pode tambm operar o Excel com muita rapidez e preci-
so. Quando voc quiser que o rob faa algo no Excel, voc programa as
instrues dele, usando cdigos especiais. Diga ao rob para seguir suas
instrues, enquanto voc se senta e relaxa, tomando um copo de limona-
da. Isso que VBA, uma linguagem de cdigo para os robs. Note que tanto
faz, o Excel no vem com um rob e muito menos faz limonada.
12 Parte I: Introduzindo VBA
No confunda VBA com VB (que significa VISUAL BASIC ).VB a lin-
guagem de programao autnoma que permite a voc criar programas
executveis (aqueles arqivos .exe). VBA e VB tem muito em comum, mas
so diferentes.
O Que Voc Pode Fazer com VBA?
Voc, provavelmente, est ciente que os usurios do Excel usam o programa
para milhares de diferentes tarefas. Segue alguns exemplos:
Matendo lista personalizada com nomes, notas de estudantes ou
ideias para um feriado prolongado.
Realizao de oramento ou previses financeiras
Anlise de dados cientficos
Criao de fatura ou outro tipo de formulrio
Criar cartas
Os exemplos so muitos, mas acredito que j entendeu. O que quero dizer
que o Excel usado para coisas variadas, e qualquer um que ler este livro
tem diferentes necessidades e expectativas considerveis. Uma coisa que
todos os leitores tm em comum a necessidade de automatizar algum
aspecto do Excel. Isso, meu caro leitor, o que VBA faz.
Por exemplo, voc pode criar um programa VBA para formatar e copiar
seus relatrios de venda do fim do ms. Depois de desenvolver e testar o
programa, voc pode executar a macro com comandos nicos, fazendo
com que o Excel faa o procedimento, salvando a voc bastante tempo. Me-
Alguns conjuntos de termos
O termo, programar Excel pode ser um pouco
confuso, por exemplo, linguagem de progra-
mao do VBA, mas serve tambm como
linguagem macro. Como voc nomeia algo
que escreve em VBA e executa no Excel?
chamado de macro ou de programa?
Frequentemente, o sistema de ajuda do
Excel nomeia procedimentos VBA como
macros, ento, uso esse mesmo termo. Mas
tambm, nomeio isso como programa.
Eu, automaticamente, atravs deste
livro, uso esse termo. O termo significa
que as etapas foram completadas au-
tomaticamente. Por exemplo, se voc
escrever um macro que adicionar
cor em alguma clula, copie uma pla-
nilha, e ento remova a cor, voc tem
automatizado essas trs etapas. Por
falar nisso, macro no apoia operao
desordenada repetida.
D
I
C
A
E
Q
U
I
P
E
T
CN
IC
A
Captulo 1: O Que VBA? 13
lhor do que ficar se matando com as sequencias cansativas de comandos,
voc pode desfrutar um refresco, enquanto deixa o seu computador fazer o
trabalho, como supostamente deve ser, certo?
Nas sees seguintes, descreverei, em poucas palavras, alguns usos comuns
para as macros VBA. Um ou dois destes far que voc se ligue.
Inserindo texto
Se voc, frequentemente, precisa entrar com o nome da empresa, endereo, e
numero de telefone em sua planilha de trabalho, voc pode criar uma macro
para digitar essas informaes para voc, pode ir o quanto longe voc quiser.
Por exemplo, voc pode desenvolver um macro que, automaticamente, digita
uma lista com os nomes de todas as pessoas que trabalham na sua empresa.
Automatizar tarefas frequentementes
Suponhamos que voc o gerente de vendas e precisa preparar o relatrio
de vendas do fim do ms para satisfazer seu chefe.Voc pode desenvolver
um programa VBA para fazer direto essa tarefa. Seu chefe ficar impressio-
nado com a qualidade e consistncia dos seus relatrios, voc pode ser
promovido a um novo cargo ou receber propostas mais proporcionais a
sua qualificao.
Automatizar operaes repetidas
Se voc precisa executar 12 vezes uma mesma ao na planilha do Excel,
enquanto executa a primeira planilha, voc pode gravar em uma macro
e deixar a macro que repita as outras planilhas a tarefa. O melhor sobre o
Excel que ele nunca reclama. Semelhantemente como se grava msicas
ou vdeos, as macros do Excel gravam comandos.
Criando comandos personalizados
Voc, frequentemente, usa a mesma sequencia de comandos no Excel?
Voc pode se poupar alguns segundos, elaborando uma macro que combi-
ne esses comandos em um nico comando personalizado, onde voc pode
execut-lo com um clique no boto.
Criando botes personalizados
Voc pode personalizar sua barra de ferramentas, com um prprio boto
que execute uma tarefa programada em uma macro. Nos locais de trabalho,
as pessoas ficam bastante impressionadas com esta personalizao.
14 Parte I: Introduzindo VBA
Desenvolvendo novas palnilhas de funes
Embora o Excel tenha numerosas funes (como SOMA e MDIA), voc
pode criar uma planilha de funes personalizada que pode simplificar
suas frmulas. Garanto que voc ficar surpreso com como isso fcil.
(Mostro como fazer isso no captulo 21). Melhor ainda, inserir caixas de
dilogo, com funes personalizadas por voc. Muito interessante.
Criando aplicaes conduzidas pela macro
Se voc estiver disponto a gastar algum tempo, pode usar VBA para criar em
escala grande de aplicaes completas com um Faixa de opes, caixas de di-
logos, ajuda na tela, e muitos outros atributos. Este livro no vai to longe, mas
eu s estou te contando isso, para voc ver como o VBA realmente poderoso.
Criando entradas personalizadas para o Excel
Voc provavelmente est familiarizado com as entradas do Excel. Por exemplo,
Caixa de Ferramentas uma entrada bastante conhecida. Voc pode usar o
VBA para desenvolver suas prprias entradas. Desenvolvi a minha Caixa de Uti-
lidades somente usando VBA e pessoas em todas as partes do mundo as usam.
Vantagem e Desvantagem do VBA
Nesta parte, rapidamente descreverei coisas boas sobre VBA, e igualmente
farei isso, explorando o lado sombrio da VBA.
VBA vantagens
Voc pode automatizar quase qualquer coisa no Excel. Para fazer s
escrever comandos, que o Excel toma conta do resto. Pode ter muitas vanta-
gens automatizando tarefas no Excel:
O Excel sempre executa tarefas exatamente do mesmo jeito (na maio-
ria dos casos uma coisa boa).
Executa tarefas muito mais rpido se voc fizesse manualmente (a
no ser que voc seja o Super-Homem).
Se voc for um bom programador de macros, o Excel sempre executa-
r tarefas sem erros (j no podemos dizer isso sobre eu e voc).
Se voc configurar corretamente o Excel, qualquer um sem o conhe-
cimento do Excel, pode executar tarefas.
Captulo 1: O Que VBA? 15
O Excel pode fazer coisas que por outro lado parece ser impossvel, poden-
do fazer voc ficar bastante popular no trabalho.
voc no precisa ficar sentado frente do computador, desperdiando tem-
po. O Excel faz o trabalho, enquanto voc vai tomar um caf.
VBA desvantagens
justo que eu mostre igualmente as desvantagens (ou possveis desvantagens)
do VBA:
Voc tem que saber como escrever programas em VBA (mas porque voc
comprou este livro, certo?). Felizmente, no to complicado como pensa.
Outras pessoas que precisem usar VBA devem ter suas prprias cpias do
programa Excel. Seria muito bom se voc pressionasse um boto e o aplicati-
vo Excel/VBA se convertesse em um programa autnomo, mas isso no seria
possvel (e provavelmente nunca ser).
s vezes, tem coisas que do errado. Em outras palavras, voc no pode
confiar cegamente em seu programa VBA, que em todas as circunstncias
ele funcionar corretamente. Bem-vindo ao mundo de apurao de erros.
VBA como um alvo em movimento. Como voc sabe, a Microsoft continu-
amente atualiza o Excel. Mesmo a Microsoft se esforando para que haja
uma compatibilidade entre as verses, voc deve saber que o cdigo VBA
que est escrevendo para Excel 2007, provavelmente no servir em verses
anteriores e/ou futuras do Excel.
VBA em Poucas Palavras
S para saber onde voc est se metendo, preparei um rpido sumrio sobre VBA.
E claro, descrevi tambm, todas as coisas dolorosas, que detalharei neste livro.
Voc executa aes em VBA escrevendo (ou gravando) comandos
em um mdulo VBA. Voc v e edita mdulos VBA, usando o Visual Basic
Editor (VBE).
Um mdulo VBA consiste em procedimentos Sub. Um procedimento
sub nada a ver com submarinos ou saborear um sanduiche. Melhor, um c-
digo de computador que excecuta aes e objetos (discutiremos isso em um
momento). Os exemplos seguintes mostram um procedimento sub simples,
chamado de somar. Este maravilhoso programa expe resultados de 1 mais 1.
16 Parte I: Introduzindo VBA
Sub Somar()
Sum = 1 + 1
MsgBox A resposta & Sum
End Sub
Um mdulo VBA pode tambm ter procedimento Function. Um
procedimento Function retorna um valor nico. Voc pode chamar
isso de outro procedimento VBA ou ainda usar isso como uma funo
em uma planilha de frmulas. Um exemplo de procedimento function
(nomeado AdicionarDois). Esta funo aceita dois nmeros (chama-
dos de argumentos) e retorna a soma dos valores.
Function AdicionarDois(arg1, arg2)
AddTwo = arg1 + arg2
End Function
VBA manipula objetos. Excel fornece dezenas e dezenas de ob-
jetos que voc pode manipular. Exemplos de objetos so as macros,
planilhas clulas.Voc tem muitos objetos sua disposio e pode
manipul-los usando os cdigos do VBA.
Objetos so colocados em hierarquia. Objetos podem ser usados
como base (estrutura) para outros. No topo da hierarquia de objetos
est o Excel. O objeto Excel chamado de aplicao. O objeto aplica-
o contm outros objetos como as planilhas e cones adicionados.
O objeto planilha pode conter objetos como escala e objetos como
tabelas-piv. O termo objeto modelo refere-se a arranjos de outros
objetos. (Pode achar mais informaes sobre o modelo de objetos no
captulo 4).
Objetos a mesma coisa que uma relao. Por exemplo, uma rela-
o de planilhas consiste em todas as planilhas em uma pasta especial
de trabalho. Uma relao de grficos consiste em todos os objetos
grficos em uma pasta de trabalho. Relao so os prprios objetos.
Voc quer dizer, um especfico objeto posicionado na hierar-
quia, pode ser usado periodicamente. Por exemplo, voc pode
consultar a planilha com Book1.xlsx
Application.Workbooks(Livro1.xlsx)
Isso significa consultar planilha Livro1.xlsx na relao de planilhas.
A relao de planilhas est contida no objeto aplicao (esse o
Excel). Pegando este gancho, voc pode consultar uma nica planilha
de trabalho na Livro1.xlsx como
Application.Workbooks(Livro1.xlsx).
Worksheets(Folha1)
Como mostrado nos exemplos, voc pode ainda, nos outros nveis,
consultar uma especfica clula (neste caso ser a clula A1):
Captulo 1: O Que VBA? 17
Application.Workbooks(Livro1.xlsx).
Worksheets(Plan1).Range(A1)
Se voc no especificar a consulta, o Excel usar os objetos
ativos. Se a planilha Livro1.xlsx estiver ativa, voc simplesmente pode
referir a consulta como:
Worksheets(Plan1).Range(A1)
Se voc sabe que a planilha de trabalho Sheet1 est ativa, pode con-
sultar:
Range(A1)
Objetos tem seus espaos. Voc pode pensar em um espao como
estrutura para um objeto. Por exemplo, uma Coluna tem espaos
como os Valores e Endereos nas planilhas. Um objeto de grficos tem
espaos HasTitle e Type.
Voc pode determinar e at mudar os espaos dos objetos usando o
VBA.
Voc pode consultar os espaos dos objetos usando o nome do
objeto e separado por um ponto o nome do espao. Por exemplo,
consultar um Valor em uma clula A1 na Plan1:
Worksheets(Plan1).Range(A1).Value
Voc pode atribuir valores para as variveis. Uma varivel um
elemento das informaes. Voc pode usar variveis no seu cdigo
VBA, como valores, textos ou espaos para estruturar. Para atribuir na
clula A1 na Folha1 introduza a varivel chamada de Interest, uso o
seguinte VBA cdigo:
Interest = Worksheets (Plan1).Range(A1).
Value
Objetos tem seus mtodos. Um mtodo uma performance do
Excel em um objeto. Por exemplo, um mtodo para um objeto Coluna
ClearContents. Este mtodo limpa o ndice da coluna.
Separado por um ponto voc pode combinar o objeto com o mto-
do. Por exemplo, a seguir indicaes claras dos ndices da clula A1:
Worksheets(Plan1).Range(A1).ClearContents
VBA inclui todos os modelos de linguagens de programao
moderna, incluindo arrays e looping. Em outras palavras, se voc
estiver disposto a gastar uma parte de seu tempo, pode escrever cdi-
gos que faam coisas incrveis.
18 Parte I: Introduzindo VBA
Acredite ou no o procedimento listado est muito bem-descrito dentro do
casco do VBA. Agora, s achar os detalhes, essa a finalidade deste livro.
Uma Excuro nas Verses Anteriores
Se voc planejar desenvolver uma macro VBA, deve ter um entendimento
da histria do Excel. Sei que voc no estava esperando uma aula de hist-
ria quando pegou este livro, mas vamos aguentar. Isto importante.
Aqui esto as principais verses do Excel para Windows que voc tem visto
luz do dia, juntamente com algumas palavras como eles manipulam as macros:
Excel 2: A verso original do Excel para o Windows chamada de
Verso 2 (melhor que a 1) ento isso corresponde verso Macintosh.
A primeira apario do Excel 2 foi em 1987 e ningum usa mais essa
verso e mesmo que ela exista, deve esquec-la.
Excel 3: Lanada em 1990, esta verso tem os recursos de linguagem
macro XLM. Ningum usou esta verso tambm.
Excel 4: Esta verso chegou s ruas em 1992. Tambm com recursos
de linguagem macro XLM. Um pequeno nmero de pessoas continua
usando esta verso. (Eles usam a filosofia: se est funcionando, por
que troc-la?)
Excel 5: Esta verso saiu em 1994. Era a primeira verso que usava
VBA (mas tambm suportava XLM). So cada vez mais raros usurios
do Excel 5.
Excel 95: Tecnicamente sabemos que a verso Excel7 (no teve Ex-
cel6), esta verso veio no vero de 1995. a verso de 32-bit, e requer
Windows 95 ou o Windows NT. Tem alguns acessrios VBA e suporta a
linguagem XLM, encontramos ocasionalmente algum que ainda usa
esta verso.
Excel 97: Esta verso (como sabemos Excel 8) nasceu em janeiro de
1997. Ela tem muitos acessrios e caractersticas para programao
de macros VBA. O Excel 97 usa um novo formato de arquivo (que a
verso anterior no pode usar). Muitas pessoas continuam usando
esta verso.
Excel 2000: Nesta verso os nmeros saltaram para quatro dgitos.
Excel 2000 (como sabemos Excel 9) teve sua estreia para o pblico
em junho de 1999. Inclui acessrios para as perspectivas dos progra-
madores, particularmente para usurios online. Com o Excel 2000 a
opo para digitalizar assinatura de macros, sendo assim, voc garan-
te para os usurios que o cdigo entregue verdadeiramente seu. O
Excel 2000 ainda tem um modesto nmero de usurios.
Captulo 1: O Que VBA? 19
Excel 2002: Esta verso (como sabemos Excel 10 ou Excel XP) apa-
rece em 2001. Algumas caractersticas desta verso que ele recupera
o trabalho quando acontece algo com o Excel. Esta a primeira
verso que usa a proteo de trabalhos (conhecida como product
activation).
Excel 2003: De todas as atualizaes do Excel que eu j tenha visto
(e eu j vi todas), Excel 2003 tem menos funcionalidade. Em outras
palavras, a maioria dos usurios (certamente inclusive voc) ficaram
muito desapontados com Excel 2003. Ainda tem pessoas que usam
esta verso. Acredito que esta verso seja a pr-Excel 2002.
Excel 2007: A ltima, e sem dvidas a melhor verso. O Excel 2007
est todo modificado, sua planilha de trabalho, novas entradas, e
suporta muito mais funes. Este livro foi escrito para a verso Excel
2007, ento se voc no tem esta verso, est lendo o livro errado.
Qual o significado desta miniaula de histria? Se voc planeja compartilhar
seus arquivos Excel/VBA para outros usurios, de vital importncia saber
que tipo de verso os usurios usam. Pessoas que usam verses antigas no
sero capazes de rodar funcionalidades nas antigas verses. Por exemplo,
se voc escrever um cdigo VBA que refere clula XFD1048576 (a ltima
clula da planilha), e esses usurios estiverem usando uma verso antiga,
dar um erro, porque na verso pr-Excel 2007 a planilha de trabalho s
tem 65,536 filas e 255 colunas (a ltima clula IV65536). O Excel 2007 tem
novos objetos, mtodos e propriedades. Se voc usar este cdigo, usurios
com verses mais velhas do Excel tero problemas (erros) quando rodar
suas macros e voc ser o culpado.
20 Parte I: Introduzindo VBA

Vous aimerez peut-être aussi