SlideShare uma empresa Scribd logo
1 de 13
Baixar para ler offline
EXCEL VBA (aula 11)
Visual Basic
prof. Gustavo Zimmermann
prof. Gustavo Zimmermann | contato@gust4vo.com
Excel VBA – Visual Basic
Vetores e Matrizes
Vetores e matrizes são estruturas de dados homogêneas conhecidas como Arrays, matrizes, variáveis
indexadas, variáveis subscritas ou tabelas em memória, são conjunto de elementos
de mesma natureza. Cada elemento da matriz pode ser distinguido de outros elementos por um ou mais
índices inteiros. As estruturas homogêneas ou arrays são divididas em unidimensionais e
multidimensionais. Geralmente, as estruturas unidimensionais são chamadas de vetores e as
multidimensionais são chamadas de matrizes. Um vetor também pode ser considerado uma matriz,
variando apenas numa dimensão.
Introdução
prof. Gustavo Zimmermann | contato@gust4vo.com
Excel VBA – Visual Basic
Vetores e Matrizes
O vetor ou matriz unidimensional é exatamente uma sequência linear de elementos
armazenados consecutivamente na memória. São variáveis do mesmo tipo declaradas com
o mesmo identificador e referenciadas por um índice para determinar sua localização
dentro da estrutura.
Vetores
dom seg ter qua qui sex sab
1 2 3 4 5 6 7
Ilustração de um vetor:
diasSem (nome do vetor)
índice
prof. Gustavo Zimmermann | contato@gust4vo.com
Excel VBA – Visual Basic
Vetores e Matrizes
Vetores
Operações básicas
Declaração Dim diasSem (1 To 7) As String
Inicialização diasSem(1) = “dom”: diasSem(2) = “seg”: ...
Atribuição diasSem(4) = “qua”
Escrita MsgBox diasSem(5)
prof. Gustavo Zimmermann | contato@gust4vo.com
Excel VBA – Visual Basic
Vetores e Matrizes
Vetores
Exemplo de declarações
1 Dim valor(10) As Integer
2 Dim soma (1 To 15) As Integer
3 Dim nome (10 To 30) As String
No primeiro exemplo acima o índice da matriz vai de 0 a 10 – contém 11 elementos. O
índice inicial de indexação de um vetor ou a matriz depende da definição da
instrução Option Base, na seção de declaração do módulo. Se o
comando Option Base 1 for especificado, todos os índices iniciam em 1, caso contrário, em
0. No segundo e terceiro exemplos os índices variam de 1 a 15 e de 10 a 30,
respectivamente.
prof. Gustavo Zimmermann | contato@gust4vo.com
Excel VBA – Visual Basic
Vetores e Matrizes
Vetores
Exemplo 1
1. Sub exemplo_vetor_1()
2. Dim notas(10) As Single
3. Dim nota As String, soma As Single, media As Single
4. Dim i As Integer
5. soma = 0
6. For i = 1 To 10
7. nota = InputBox("Informe a Nota " & i)
8. soma = soma + nota
9. notas(i) = nota
10. Next
11. media = soma / 10
12. MsgBox ("Média da turma: " & media)
13. End Sub
prof. Gustavo Zimmermann | contato@gust4vo.com
Excel VBA – Visual Basic
Vetores e Matrizes
Vetores
Exemplo 2
1. Sub exemplo_vetor_2()
2. Dim nome(3) As String
3. Dim nota(3) As Single
4. Dim i As Integer, j As Integer
5. 'Loop de COLETA de Dados
6. For i = 0 To 2
7. nome(i) = InputBox("Digite o NOME do Aluno")
8. nota(i) = InputBox("Digite a NOTA do Aluno")
9. Next
10. 'Loop de PRINT de dados
11. For j = 0 To 2
12. MsgBox (nome(j) & ": " & nota(j))
13. Next
14. End Sub
prof. Gustavo Zimmermann | contato@gust4vo.com
Excel VBA – Visual Basic
Vetores e Matrizes
Matrizes bidimensionais
No Visual Basic, pode-se declarar matrizes com até 60 dimensões.
A instrução a seguir declara uma matriz bidimensional de 3 por 5:
1. Dim matriz (1 To 3, 1 To 5) As Single
1. Dim matriz (3, 5) As Single
ou
No primeiro exemplo os índices da matriz iniciam em 1 e no segundo, em 0 se não for
declarada no nível de módulo a opção Option Base 1. A primeira dimensão da matriz se
refere à linha e a segunda, dimensão à coluna, no primeiro exemplo tem-se uma matriz de
3 linhas por 5 colunas e no segundo, 4 linhas por 6 colunas na ausência do comando
Option Base 1.
prof. Gustavo Zimmermann | contato@gust4vo.com
Excel VBA – Visual Basic
Vetores e Matrizes
Matrizes bidimensionais
O procedimento, a seguir, preenche cada elemento da matriz bidimensional com base no
valor de sua localização dentro da matriz:
1. Sub exemplo1_matriz()
2. Dim i As Integer, j As Integer
3. Dim matriz(3, 5) As Single
4. ' Preenche a matriz com valores e os imprime na janela
5. ' de verificação imediata.
6. For i = 1 To 3
7. For j = 1 To 5
8. matriz(i, j) = i * j
9. Debug.Print matriz(i, j)
10. Next
11. Debug.Print ' imprime branco ao completar uma linha.
12. Next
13. End Sub
prof. Gustavo Zimmermann | contato@gust4vo.com
Excel VBA – Visual Basic
Vetores e Matrizes
Matrizes bidimensionais
Saída
j (x)
0 1 2 3 4
i (y)
2 3 6 9 12 15
1 2 4 6 8 10
0 1 2 3 4 5
prof. Gustavo Zimmermann | contato@gust4vo.com
Excel VBA – Visual Basic
Vetores e Matrizes
1. Sub exemplo2_matriz()
2. Dim nome(1 To 3) As String
3. Dim notas(1 To 3, 1 To 2) As Single
4. Dim i As Single, j As Single
5. For i = 1 To 3
6. nome(i) = InputBox("Digite o NOME do aluno:")
7. For j = 1 To 2
8. notas(i, j) = InputBox("Digite A NOTA da G“ & j)
9. Next
10. Next
11. For i = 1 To 3
12. MsgBox ("Aluna: " & nome(i) & " obteve " & "G1: " & notas(i, 1) & " G2: " &
notas(i, 2))
13. Next
14. End Sub
Exemplo 2
Matrizes bidimensionais
prof. Gustavo Zimmermann | contato@gust4vo.com
Excel VBA – Visual Basic
Vetores e Matrizes
Matrizes bidimensionais
O procedimento, a seguir, preenche cada elemento da matriz bidimensional com base no
valor de sua localização dentro da matriz:
1. Sub exemplo1_matriz()
2. Dim i As Integer, j As Integer
3. Dim matriz(3, 5) As Single
4. ' Preenche a matriz com valores e os imprime na janela
5. ' de verificação imediata.
6. For i = 1 To 3
7. For j = 1 To 5
8. matriz(i, j) = i * j
9. Debug.Print matriz(i, j)
10. Next
11. Debug.Print ' imprime branco ao completar uma linha.
12. Next
13. End Sub
prof. Gustavo Zimmermann | contato@gust4vo.com
Excel VBA – Visual Basic
Vetores e Matrizes
Matrizes fixas e dinâmicas
As matrizes declaradas acima são exemplos de matrizes fixas. A matriz dinâmica é
declarada deixando-se vazios os parênteses como no exemplo que segue:
1. Dim matDinamica( ) As Integer

Mais conteúdo relacionado

Mais procurados

Curso de Java (Parte 4)
Curso de Java (Parte 4)Curso de Java (Parte 4)
Curso de Java (Parte 4)Mario Sergio
 
Java: Classes Abstratas, Anônimas, Interface
Java: Classes Abstratas, Anônimas, InterfaceJava: Classes Abstratas, Anônimas, Interface
Java: Classes Abstratas, Anônimas, InterfaceArthur Emanuel
 
Manual vsflexgrid
Manual vsflexgridManual vsflexgrid
Manual vsflexgridmarcos0512
 
Aula 06 - UML e Padrões de Projeto
Aula 06 - UML e Padrões de ProjetoAula 06 - UML e Padrões de Projeto
Aula 06 - UML e Padrões de ProjetoVinícius de Paula
 
Project coin pequenas mudanças grandes facilidades
Project coin pequenas mudanças grandes facilidadesProject coin pequenas mudanças grandes facilidades
Project coin pequenas mudanças grandes facilidadesMarcelo de Castro
 
Cadastro de clientes em c#
Cadastro de clientes em c#Cadastro de clientes em c#
Cadastro de clientes em c#André Luiz
 
Roteiro trabalho com o GoldVarb2001 v2
Roteiro trabalho com o GoldVarb2001 v2Roteiro trabalho com o GoldVarb2001 v2
Roteiro trabalho com o GoldVarb2001 v2Diana Pilatti
 
Análise Orientada a Objetos - Diagrama de Sequencia
Análise Orientada a Objetos - Diagrama de SequenciaAnálise Orientada a Objetos - Diagrama de Sequencia
Análise Orientada a Objetos - Diagrama de SequenciaCursoSENAC
 
Estruturas de Dados em C#
Estruturas de Dados em C#Estruturas de Dados em C#
Estruturas de Dados em C#Marcelo Charan
 
Aula diagrama de interação - 3º periodo uniao
Aula diagrama de interação - 3º periodo uniaoAula diagrama de interação - 3º periodo uniao
Aula diagrama de interação - 3º periodo uniaoMaria Alice Jovinski
 
Tutorial análise estatística
Tutorial análise estatísticaTutorial análise estatística
Tutorial análise estatísticaduarteparreira
 
Trabalhando com GoldVarb 2001 Diana Pilatti Onofre
Trabalhando com GoldVarb 2001   Diana Pilatti OnofreTrabalhando com GoldVarb 2001   Diana Pilatti Onofre
Trabalhando com GoldVarb 2001 Diana Pilatti OnofreDiana Pilatti
 

Mais procurados (20)

Curso de Java (Parte 4)
Curso de Java (Parte 4)Curso de Java (Parte 4)
Curso de Java (Parte 4)
 
Java13
Java13Java13
Java13
 
Java: Classes Abstratas, Anônimas, Interface
Java: Classes Abstratas, Anônimas, InterfaceJava: Classes Abstratas, Anônimas, Interface
Java: Classes Abstratas, Anônimas, Interface
 
Curso de Excel VBA
Curso de Excel VBACurso de Excel VBA
Curso de Excel VBA
 
Manual vsflexgrid
Manual vsflexgridManual vsflexgrid
Manual vsflexgrid
 
Aula 06 - UML e Padrões de Projeto
Aula 06 - UML e Padrões de ProjetoAula 06 - UML e Padrões de Projeto
Aula 06 - UML e Padrões de Projeto
 
Project coin pequenas mudanças grandes facilidades
Project coin pequenas mudanças grandes facilidadesProject coin pequenas mudanças grandes facilidades
Project coin pequenas mudanças grandes facilidades
 
Basico dovba excel_tutorial1
Basico dovba excel_tutorial1Basico dovba excel_tutorial1
Basico dovba excel_tutorial1
 
Java8
Java8Java8
Java8
 
Cadastro de clientes em c#
Cadastro de clientes em c#Cadastro de clientes em c#
Cadastro de clientes em c#
 
Roteiro trabalho com o GoldVarb2001 v2
Roteiro trabalho com o GoldVarb2001 v2Roteiro trabalho com o GoldVarb2001 v2
Roteiro trabalho com o GoldVarb2001 v2
 
POO - Aula 003
POO - Aula 003POO - Aula 003
POO - Aula 003
 
Análise Orientada a Objetos - Diagrama de Sequencia
Análise Orientada a Objetos - Diagrama de SequenciaAnálise Orientada a Objetos - Diagrama de Sequencia
Análise Orientada a Objetos - Diagrama de Sequencia
 
SPSS – Tutorial para Iniciantes
SPSS – Tutorial para IniciantesSPSS – Tutorial para Iniciantes
SPSS – Tutorial para Iniciantes
 
Estruturas de Dados em C#
Estruturas de Dados em C#Estruturas de Dados em C#
Estruturas de Dados em C#
 
Aula diagrama de interação - 3º periodo uniao
Aula diagrama de interação - 3º periodo uniaoAula diagrama de interação - 3º periodo uniao
Aula diagrama de interação - 3º periodo uniao
 
Apostila spss
Apostila spssApostila spss
Apostila spss
 
Tutorial análise estatística
Tutorial análise estatísticaTutorial análise estatística
Tutorial análise estatística
 
Aula1
Aula1Aula1
Aula1
 
Trabalhando com GoldVarb 2001 Diana Pilatti Onofre
Trabalhando com GoldVarb 2001   Diana Pilatti OnofreTrabalhando com GoldVarb 2001   Diana Pilatti Onofre
Trabalhando com GoldVarb 2001 Diana Pilatti Onofre
 

Destaque

✔ VBA Excel Specialist® - Index 2016 + de 700 Artigos - Atualização de VBA Ex...
✔ VBA Excel Specialist® - Index 2016 + de 700 Artigos - Atualização de VBA Ex...✔ VBA Excel Specialist® - Index 2016 + de 700 Artigos - Atualização de VBA Ex...
✔ VBA Excel Specialist® - Index 2016 + de 700 Artigos - Atualização de VBA Ex...André Luiz Bernardes
 
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vbaConceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vbaWanderlei Silva do Carmo
 
Curso de Macros en Excel (VBA)
Curso de Macros en Excel (VBA)Curso de Macros en Excel (VBA)
Curso de Macros en Excel (VBA)UNASP
 
Palestra EX2 Excel Experts - UNICAMP / FCA
Palestra EX2 Excel Experts - UNICAMP / FCAPalestra EX2 Excel Experts - UNICAMP / FCA
Palestra EX2 Excel Experts - UNICAMP / FCAexdois
 
Curso de dashboard
Curso de dashboardCurso de dashboard
Curso de dashboardSilas Serpa
 
Exercícios sobre ondas (ondas estacionárias) física
Exercícios sobre ondas (ondas estacionárias)   físicaExercícios sobre ondas (ondas estacionárias)   física
Exercícios sobre ondas (ondas estacionárias) físicaMatheus Alves
 
Lista de exercicios vetores, matrizes, registros e sub-algoritmos
Lista de exercicios   vetores, matrizes, registros e sub-algoritmosLista de exercicios   vetores, matrizes, registros e sub-algoritmos
Lista de exercicios vetores, matrizes, registros e sub-algoritmosMauro Pereira
 
2 em exercicios-ondas
2 em exercicios-ondas2 em exercicios-ondas
2 em exercicios-ondasFabio Lima
 
2 exatas cssa exercícios sobre mhs prof waldir montenegro
2 exatas cssa  exercícios sobre mhs prof waldir montenegro2 exatas cssa  exercícios sobre mhs prof waldir montenegro
2 exatas cssa exercícios sobre mhs prof waldir montenegroWaldir Montenegro
 
02 exercicios 2 ano-ondas
02 exercicios 2 ano-ondas02 exercicios 2 ano-ondas
02 exercicios 2 ano-ondasPedro Mateus
 
Asp julio battisti - criando sites dinamicos com asp 3.0
Asp   julio battisti - criando sites dinamicos com asp 3.0Asp   julio battisti - criando sites dinamicos com asp 3.0
Asp julio battisti - criando sites dinamicos com asp 3.0leojr_0
 
Curso excel avançado 2007 e 2010
Curso excel avançado 2007 e 2010Curso excel avançado 2007 e 2010
Curso excel avançado 2007 e 2010Sula Souza
 

Destaque (17)

✔ VBA Excel Specialist® - Index 2016 + de 700 Artigos - Atualização de VBA Ex...
✔ VBA Excel Specialist® - Index 2016 + de 700 Artigos - Atualização de VBA Ex...✔ VBA Excel Specialist® - Index 2016 + de 700 Artigos - Atualização de VBA Ex...
✔ VBA Excel Specialist® - Index 2016 + de 700 Artigos - Atualização de VBA Ex...
 
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vbaConceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
 
Curso de Macros en Excel (VBA)
Curso de Macros en Excel (VBA)Curso de Macros en Excel (VBA)
Curso de Macros en Excel (VBA)
 
Física II
Física IIFísica II
Física II
 
Média e Moda
Média e ModaMédia e Moda
Média e Moda
 
ex2
ex2ex2
ex2
 
Palestra EX2 Excel Experts - UNICAMP / FCA
Palestra EX2 Excel Experts - UNICAMP / FCAPalestra EX2 Excel Experts - UNICAMP / FCA
Palestra EX2 Excel Experts - UNICAMP / FCA
 
Curso de dashboard
Curso de dashboardCurso de dashboard
Curso de dashboard
 
Exercicios vm
Exercicios vmExercicios vm
Exercicios vm
 
Exercícios sobre ondas (ondas estacionárias) física
Exercícios sobre ondas (ondas estacionárias)   físicaExercícios sobre ondas (ondas estacionárias)   física
Exercícios sobre ondas (ondas estacionárias) física
 
Lista de exercicios vetores, matrizes, registros e sub-algoritmos
Lista de exercicios   vetores, matrizes, registros e sub-algoritmosLista de exercicios   vetores, matrizes, registros e sub-algoritmos
Lista de exercicios vetores, matrizes, registros e sub-algoritmos
 
2 em exercicios-ondas
2 em exercicios-ondas2 em exercicios-ondas
2 em exercicios-ondas
 
2 exatas cssa exercícios sobre mhs prof waldir montenegro
2 exatas cssa  exercícios sobre mhs prof waldir montenegro2 exatas cssa  exercícios sobre mhs prof waldir montenegro
2 exatas cssa exercícios sobre mhs prof waldir montenegro
 
02 exercicios 2 ano-ondas
02 exercicios 2 ano-ondas02 exercicios 2 ano-ondas
02 exercicios 2 ano-ondas
 
Asp julio battisti - criando sites dinamicos com asp 3.0
Asp   julio battisti - criando sites dinamicos com asp 3.0Asp   julio battisti - criando sites dinamicos com asp 3.0
Asp julio battisti - criando sites dinamicos com asp 3.0
 
Movimento harmonico
Movimento harmonicoMovimento harmonico
Movimento harmonico
 
Curso excel avançado 2007 e 2010
Curso excel avançado 2007 e 2010Curso excel avançado 2007 e 2010
Curso excel avançado 2007 e 2010
 

Semelhante a Excel VBA: Aula 11

Semelhante a Excel VBA: Aula 11 (20)

Vetores e Matrizes.pdf
Vetores e Matrizes.pdfVetores e Matrizes.pdf
Vetores e Matrizes.pdf
 
8. matrizes
8. matrizes8. matrizes
8. matrizes
 
Alg aula 07 - matrizes tp1
Alg   aula 07 - matrizes tp1Alg   aula 07 - matrizes tp1
Alg aula 07 - matrizes tp1
 
Aula 8 - Vetores e Matrizes.pptx
Aula 8 - Vetores e Matrizes.pptxAula 8 - Vetores e Matrizes.pptx
Aula 8 - Vetores e Matrizes.pptx
 
Ipccea cap iv
Ipccea cap ivIpccea cap iv
Ipccea cap iv
 
Matrizes
MatrizesMatrizes
Matrizes
 
Matrizes
MatrizesMatrizes
Matrizes
 
Implementação mód4 - encontro 1-
Implementação   mód4 - encontro 1-Implementação   mód4 - encontro 1-
Implementação mód4 - encontro 1-
 
Implementação módulo4
Implementação   módulo4 Implementação   módulo4
Implementação módulo4
 
3 vetor.matriz
3 vetor.matriz3 vetor.matriz
3 vetor.matriz
 
Vetores e Matrizes em C.
Vetores e Matrizes em C.Vetores e Matrizes em C.
Vetores e Matrizes em C.
 
Construcao de Algoritmos - Aula 11
Construcao de Algoritmos - Aula 11Construcao de Algoritmos - Aula 11
Construcao de Algoritmos - Aula 11
 
Cap09
Cap09Cap09
Cap09
 
Cap09
Cap09Cap09
Cap09
 
Cap09
Cap09Cap09
Cap09
 
Aula Geral Excel
Aula Geral   ExcelAula Geral   Excel
Aula Geral Excel
 
Algoritmos e Programação: Matrizes
Algoritmos e Programação: MatrizesAlgoritmos e Programação: Matrizes
Algoritmos e Programação: Matrizes
 
Algoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registrosAlgoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registros
 
Aula sobre matrizes - Linguagem C
Aula sobre matrizes - Linguagem CAula sobre matrizes - Linguagem C
Aula sobre matrizes - Linguagem C
 
Implementação Currículo - módulo4 - Matrizes/Nºs Complexos
Implementação Currículo - módulo4 - Matrizes/Nºs ComplexosImplementação Currículo - módulo4 - Matrizes/Nºs Complexos
Implementação Currículo - módulo4 - Matrizes/Nºs Complexos
 

Mais de Gustavo Zimmermann

Aula 12 - Revisão Pré-Avaliação
Aula 12 - Revisão Pré-AvaliaçãoAula 12 - Revisão Pré-Avaliação
Aula 12 - Revisão Pré-AvaliaçãoGustavo Zimmermann
 
Aula 9 - Livros Históricos (part. 2)
Aula 9 - Livros Históricos (part. 2)Aula 9 - Livros Históricos (part. 2)
Aula 9 - Livros Históricos (part. 2)Gustavo Zimmermann
 
Aula 10 - Livros Históricos (part. 3)
Aula 10 - Livros Históricos (part. 3)Aula 10 - Livros Históricos (part. 3)
Aula 10 - Livros Históricos (part. 3)Gustavo Zimmermann
 
Aula 8 - Livros Históricos (part. 1)
Aula 8 - Livros Históricos (part. 1)Aula 8 - Livros Históricos (part. 1)
Aula 8 - Livros Históricos (part. 1)Gustavo Zimmermann
 
Aula 7 - Revisão Pré-Avaliação
Aula 7 - Revisão Pré-AvaliaçãoAula 7 - Revisão Pré-Avaliação
Aula 7 - Revisão Pré-AvaliaçãoGustavo Zimmermann
 
Aula 1 - Apologética e suas Metodologias
Aula 1 - Apologética e suas MetodologiasAula 1 - Apologética e suas Metodologias
Aula 1 - Apologética e suas MetodologiasGustavo Zimmermann
 
Introdução ao Web Design: Aula 6 - HTML 5 (part. 2)
Introdução ao Web Design: Aula 6 - HTML 5 (part. 2)Introdução ao Web Design: Aula 6 - HTML 5 (part. 2)
Introdução ao Web Design: Aula 6 - HTML 5 (part. 2)Gustavo Zimmermann
 
Introdução ao Web Design: Aula 5 - HTML (part. 1)
Introdução ao Web Design: Aula 5 - HTML (part. 1)Introdução ao Web Design: Aula 5 - HTML (part. 1)
Introdução ao Web Design: Aula 5 - HTML (part. 1)Gustavo Zimmermann
 
Introdução ao Web Design: Aula 3 - PhotoShop (part. 1)
Introdução ao Web Design: Aula 3 - PhotoShop (part. 1)Introdução ao Web Design: Aula 3 - PhotoShop (part. 1)
Introdução ao Web Design: Aula 3 - PhotoShop (part. 1)Gustavo Zimmermann
 
Introdução ao Web Design: Aula 4 - PhotoShop (part. 2)
Introdução ao Web Design: Aula 4 - PhotoShop (part. 2)Introdução ao Web Design: Aula 4 - PhotoShop (part. 2)
Introdução ao Web Design: Aula 4 - PhotoShop (part. 2)Gustavo Zimmermann
 

Mais de Gustavo Zimmermann (20)

Aula 13 - Livros Proféticos
Aula 13 - Livros ProféticosAula 13 - Livros Proféticos
Aula 13 - Livros Proféticos
 
Aula 12 - Revisão Pré-Avaliação
Aula 12 - Revisão Pré-AvaliaçãoAula 12 - Revisão Pré-Avaliação
Aula 12 - Revisão Pré-Avaliação
 
Aula 11 - Livros Poéticos
Aula 11 - Livros PoéticosAula 11 - Livros Poéticos
Aula 11 - Livros Poéticos
 
Aula 9 - Livros Históricos (part. 2)
Aula 9 - Livros Históricos (part. 2)Aula 9 - Livros Históricos (part. 2)
Aula 9 - Livros Históricos (part. 2)
 
Aula 10 - Livros Históricos (part. 3)
Aula 10 - Livros Históricos (part. 3)Aula 10 - Livros Históricos (part. 3)
Aula 10 - Livros Históricos (part. 3)
 
Aula 8 - Livros Históricos (part. 1)
Aula 8 - Livros Históricos (part. 1)Aula 8 - Livros Históricos (part. 1)
Aula 8 - Livros Históricos (part. 1)
 
Aula 7 - Revisão Pré-Avaliação
Aula 7 - Revisão Pré-AvaliaçãoAula 7 - Revisão Pré-Avaliação
Aula 7 - Revisão Pré-Avaliação
 
Aula 6 - Deuteronômio
Aula 6 - DeuteronômioAula 6 - Deuteronômio
Aula 6 - Deuteronômio
 
Aula 5 - Números
Aula 5 - NúmerosAula 5 - Números
Aula 5 - Números
 
Aula 1 - História da Bíblia
Aula 1 - História da BíbliaAula 1 - História da Bíblia
Aula 1 - História da Bíblia
 
Aula 3 - Êxodo
Aula 3 - ÊxodoAula 3 - Êxodo
Aula 3 - Êxodo
 
Aula 4 - Levíticos
Aula 4 - LevíticosAula 4 - Levíticos
Aula 4 - Levíticos
 
Aula 2 - Gênesis
Aula 2 - GênesisAula 2 - Gênesis
Aula 2 - Gênesis
 
Aula 1 - Apologética e suas Metodologias
Aula 1 - Apologética e suas MetodologiasAula 1 - Apologética e suas Metodologias
Aula 1 - Apologética e suas Metodologias
 
Aula 2 - Teologia Natural
Aula 2 - Teologia NaturalAula 2 - Teologia Natural
Aula 2 - Teologia Natural
 
Conciência Política
Conciência PolíticaConciência Política
Conciência Política
 
Introdução ao Web Design: Aula 6 - HTML 5 (part. 2)
Introdução ao Web Design: Aula 6 - HTML 5 (part. 2)Introdução ao Web Design: Aula 6 - HTML 5 (part. 2)
Introdução ao Web Design: Aula 6 - HTML 5 (part. 2)
 
Introdução ao Web Design: Aula 5 - HTML (part. 1)
Introdução ao Web Design: Aula 5 - HTML (part. 1)Introdução ao Web Design: Aula 5 - HTML (part. 1)
Introdução ao Web Design: Aula 5 - HTML (part. 1)
 
Introdução ao Web Design: Aula 3 - PhotoShop (part. 1)
Introdução ao Web Design: Aula 3 - PhotoShop (part. 1)Introdução ao Web Design: Aula 3 - PhotoShop (part. 1)
Introdução ao Web Design: Aula 3 - PhotoShop (part. 1)
 
Introdução ao Web Design: Aula 4 - PhotoShop (part. 2)
Introdução ao Web Design: Aula 4 - PhotoShop (part. 2)Introdução ao Web Design: Aula 4 - PhotoShop (part. 2)
Introdução ao Web Design: Aula 4 - PhotoShop (part. 2)
 

Excel VBA: Aula 11

  • 1. EXCEL VBA (aula 11) Visual Basic prof. Gustavo Zimmermann
  • 2. prof. Gustavo Zimmermann | contato@gust4vo.com Excel VBA – Visual Basic Vetores e Matrizes Vetores e matrizes são estruturas de dados homogêneas conhecidas como Arrays, matrizes, variáveis indexadas, variáveis subscritas ou tabelas em memória, são conjunto de elementos de mesma natureza. Cada elemento da matriz pode ser distinguido de outros elementos por um ou mais índices inteiros. As estruturas homogêneas ou arrays são divididas em unidimensionais e multidimensionais. Geralmente, as estruturas unidimensionais são chamadas de vetores e as multidimensionais são chamadas de matrizes. Um vetor também pode ser considerado uma matriz, variando apenas numa dimensão. Introdução
  • 3. prof. Gustavo Zimmermann | contato@gust4vo.com Excel VBA – Visual Basic Vetores e Matrizes O vetor ou matriz unidimensional é exatamente uma sequência linear de elementos armazenados consecutivamente na memória. São variáveis do mesmo tipo declaradas com o mesmo identificador e referenciadas por um índice para determinar sua localização dentro da estrutura. Vetores dom seg ter qua qui sex sab 1 2 3 4 5 6 7 Ilustração de um vetor: diasSem (nome do vetor) índice
  • 4. prof. Gustavo Zimmermann | contato@gust4vo.com Excel VBA – Visual Basic Vetores e Matrizes Vetores Operações básicas Declaração Dim diasSem (1 To 7) As String Inicialização diasSem(1) = “dom”: diasSem(2) = “seg”: ... Atribuição diasSem(4) = “qua” Escrita MsgBox diasSem(5)
  • 5. prof. Gustavo Zimmermann | contato@gust4vo.com Excel VBA – Visual Basic Vetores e Matrizes Vetores Exemplo de declarações 1 Dim valor(10) As Integer 2 Dim soma (1 To 15) As Integer 3 Dim nome (10 To 30) As String No primeiro exemplo acima o índice da matriz vai de 0 a 10 – contém 11 elementos. O índice inicial de indexação de um vetor ou a matriz depende da definição da instrução Option Base, na seção de declaração do módulo. Se o comando Option Base 1 for especificado, todos os índices iniciam em 1, caso contrário, em 0. No segundo e terceiro exemplos os índices variam de 1 a 15 e de 10 a 30, respectivamente.
  • 6. prof. Gustavo Zimmermann | contato@gust4vo.com Excel VBA – Visual Basic Vetores e Matrizes Vetores Exemplo 1 1. Sub exemplo_vetor_1() 2. Dim notas(10) As Single 3. Dim nota As String, soma As Single, media As Single 4. Dim i As Integer 5. soma = 0 6. For i = 1 To 10 7. nota = InputBox("Informe a Nota " & i) 8. soma = soma + nota 9. notas(i) = nota 10. Next 11. media = soma / 10 12. MsgBox ("Média da turma: " & media) 13. End Sub
  • 7. prof. Gustavo Zimmermann | contato@gust4vo.com Excel VBA – Visual Basic Vetores e Matrizes Vetores Exemplo 2 1. Sub exemplo_vetor_2() 2. Dim nome(3) As String 3. Dim nota(3) As Single 4. Dim i As Integer, j As Integer 5. 'Loop de COLETA de Dados 6. For i = 0 To 2 7. nome(i) = InputBox("Digite o NOME do Aluno") 8. nota(i) = InputBox("Digite a NOTA do Aluno") 9. Next 10. 'Loop de PRINT de dados 11. For j = 0 To 2 12. MsgBox (nome(j) & ": " & nota(j)) 13. Next 14. End Sub
  • 8. prof. Gustavo Zimmermann | contato@gust4vo.com Excel VBA – Visual Basic Vetores e Matrizes Matrizes bidimensionais No Visual Basic, pode-se declarar matrizes com até 60 dimensões. A instrução a seguir declara uma matriz bidimensional de 3 por 5: 1. Dim matriz (1 To 3, 1 To 5) As Single 1. Dim matriz (3, 5) As Single ou No primeiro exemplo os índices da matriz iniciam em 1 e no segundo, em 0 se não for declarada no nível de módulo a opção Option Base 1. A primeira dimensão da matriz se refere à linha e a segunda, dimensão à coluna, no primeiro exemplo tem-se uma matriz de 3 linhas por 5 colunas e no segundo, 4 linhas por 6 colunas na ausência do comando Option Base 1.
  • 9. prof. Gustavo Zimmermann | contato@gust4vo.com Excel VBA – Visual Basic Vetores e Matrizes Matrizes bidimensionais O procedimento, a seguir, preenche cada elemento da matriz bidimensional com base no valor de sua localização dentro da matriz: 1. Sub exemplo1_matriz() 2. Dim i As Integer, j As Integer 3. Dim matriz(3, 5) As Single 4. ' Preenche a matriz com valores e os imprime na janela 5. ' de verificação imediata. 6. For i = 1 To 3 7. For j = 1 To 5 8. matriz(i, j) = i * j 9. Debug.Print matriz(i, j) 10. Next 11. Debug.Print ' imprime branco ao completar uma linha. 12. Next 13. End Sub
  • 10. prof. Gustavo Zimmermann | contato@gust4vo.com Excel VBA – Visual Basic Vetores e Matrizes Matrizes bidimensionais Saída j (x) 0 1 2 3 4 i (y) 2 3 6 9 12 15 1 2 4 6 8 10 0 1 2 3 4 5
  • 11. prof. Gustavo Zimmermann | contato@gust4vo.com Excel VBA – Visual Basic Vetores e Matrizes 1. Sub exemplo2_matriz() 2. Dim nome(1 To 3) As String 3. Dim notas(1 To 3, 1 To 2) As Single 4. Dim i As Single, j As Single 5. For i = 1 To 3 6. nome(i) = InputBox("Digite o NOME do aluno:") 7. For j = 1 To 2 8. notas(i, j) = InputBox("Digite A NOTA da G“ & j) 9. Next 10. Next 11. For i = 1 To 3 12. MsgBox ("Aluna: " & nome(i) & " obteve " & "G1: " & notas(i, 1) & " G2: " & notas(i, 2)) 13. Next 14. End Sub Exemplo 2 Matrizes bidimensionais
  • 12. prof. Gustavo Zimmermann | contato@gust4vo.com Excel VBA – Visual Basic Vetores e Matrizes Matrizes bidimensionais O procedimento, a seguir, preenche cada elemento da matriz bidimensional com base no valor de sua localização dentro da matriz: 1. Sub exemplo1_matriz() 2. Dim i As Integer, j As Integer 3. Dim matriz(3, 5) As Single 4. ' Preenche a matriz com valores e os imprime na janela 5. ' de verificação imediata. 6. For i = 1 To 3 7. For j = 1 To 5 8. matriz(i, j) = i * j 9. Debug.Print matriz(i, j) 10. Next 11. Debug.Print ' imprime branco ao completar uma linha. 12. Next 13. End Sub
  • 13. prof. Gustavo Zimmermann | contato@gust4vo.com Excel VBA – Visual Basic Vetores e Matrizes Matrizes fixas e dinâmicas As matrizes declaradas acima são exemplos de matrizes fixas. A matriz dinâmica é declarada deixando-se vazios os parênteses como no exemplo que segue: 1. Dim matDinamica( ) As Integer