Tutorial
3 – Básico do VBA do Excel Este tutorial contém a 3a lição sobre
a série de Tutoriais do VBA Básico do Excel. Ele cobre tópicos na
criação e gerenciamento de array e entendimento das estruturas de laço e de
decisão do VBA. Iniciantes na programação VBA serão encorajados a
percorrerem de cabo a rabo as lições anteriores desta série se eles ainda não
fizeram isto. Este documento contém informação sobre os seguintes
tópicos.
Declarar
um Array com a Declaração Dim Redimensionando
um Array com a Declaração Redim Microsoft Support site ou a seção
Ajuda (Help) do VBA do Excel no seu
computador contém exemplos compreensivos da maioria das coisas cobertas neste
tutorial. Para mais informação, por favor refira-se a elas. Criando e Administrando
Array Microsoft Support Dim Arr(5) Arr(1) = "Jan" Arr(2) = "Fev" Arr(3) = "Mar" Arr(4) = "Abr" Arr(5) = "Maio" MsgBox Arr(1) &
"-" & Arr(2) & "-" & Arr(3) &
"-" & Arr(4) & "-" & Arr(5) End Sub Redimensionando um Array
com a Declaração Redim Gerenciando Array Dinâmico
Trocando o Redim Arr(6) com Redim
Preserve Arr(6), todos os valores permanecerão. Por exemplo:
Criar Array Multidimensional
Dim Arr(2,2) Daí, então, atribuímos os valores para o array.
Nós tratamos primeiro a dimensão como o ano e a segunda dimensão como a venda
de produto: Encontrar
o Tamanho de um Array |
If Idade >= 18 Then Status = "Adulto" Você também pode usar um bloco de múltiplas linhas na declaração If como segue:
If Idade
>= 18 Then Note que no caso do bloco de múltiplas linhas, a declaração End If é necessária, onde o caso linha
única não.
IF ... Then ... Else
If Idade >=22 Then End If Novamente, note que a declaração End If é necessária neste caso também pois
existe mais do que um bloco de declarações.
IF ... Then ... ElseIf If Idade
>= 18 and Idade < 22 Then Note que a última condição sob Else é, implicitamente, Idade < 18.
Select Case Select Case Grau
Estruturas de Laço For i = 1 to 10
Neste exemplo, i é a variável contadora de 1 até 10. O processo de looping
enviará valor à primeira coluna da activesheet e imprime i (o qual vai de 1 a
10) para a linha 1 até a 10 daquela coluna.
For i = 1 to 10 Step 2 Este processo de laço imprimirá valores com um incremento de 2 na linha 1, 3,
5, 7 e 9 na coluna um.
Você pode também decrementar no laço atribuindo um valor negativo após a
palavra Step.
For i = 10 to 1 Step -2 Este processo do laço imprimirá valores com um incremento de -2 começando do 10 na linha 10, 8, 6,
4 e 2 na coluna um.
Do While ... Loop i = 1 Este processo de laço conduzirá ao mesmo resultado que o exemplo das
estruturas For ... Next. Do Until ... Loop i = 1 Este processo de laço conduz o mesmo resultado que no exemplo de estruturas For
... Next.
Do ... Loop While
i = 1
i = 1
|