Podemos gerar relatórios a partir de seleções de dados efetuadas dentro de listbox. Os dados serão lidos e armazenados em uma planilha pré-configurada para receber esses dados. A vídeo aula 29 trata deste tema.
Para entender melhor os comandos criados dentro das macros temos que conhecer algumas propriedades da ListBox ou caixa de listagem... as principais e usadas com mais frequência estão listadas abaixo. Todas as propriedades de um objeto são declaradas após o nome de objeto seguindo por . "ponto", ou seja se o nome do meu objeto listbox for ListBox1 por exemplo a sintaxe de trabalho das propriedades ficaria da seguinte forma
ListBox1.AddItem ou ListBox1.Clear e assim por diante...
- Additem
- Clear
- List
- ListCount
- ListIndex
- Select
1. Propriedade AddItem
A propriedade AddItem da listbox pode inserir dados da planilha ou diretamente através de código...
para que a listbox seja carregada ao se abrir o formulário é necessário colocar o código abaixo dentro do procedimento Initialize do formulário, ou seja, deve-se dar duplo click em uma área vazia do formulário para que seja aberta a tela de códificação... por padrão será aberto no Procedimento Click(Imagem 01), mas basta selecionar o procedimento Initialize na caixa de listagem (Imagem02)
Ex.1. Listbox1.AddItem "Janeiro"
Listbox1.AddItem "Fevereiro"
Listbox1.AddItem "Março"
Listbox1.AddItem "Abril"
Imagem 01. Tela de codificação aberta após duplo clique na área do Formulário |
Imagem 02. Selecionando o procedimento Initialize |
Imagem 03. Código inserido no Initialize e listbox mostrando os dados inseridos via código |
O mesmo código do Exemplo 01 pode ser escrito da seguinte maneira, usando-se a comando With, para não ficar repetitivo a digitação dos dados para um mesmo objeto.
With ListBox1
.AddItem "Janeiro"
.AddItem "Fevereiro"
.AddItem "Março"
.AddItem "Abril"
End With
1.1 Propriedade AddItem mais de uma coluna
Para se colocar dados em mais de uma coluna numa listbox deve-se primeiramente colocar na propriedade ColumnCount do objeto (Imagem 4) o número de colunas que se deseja. Lembrando que uma listbox pode conter no máxima 10 colunas quando os dados forem adicionados via código.
Imagem 04. Caixa de Propriedades do Objeto Listbox |
É possível também indicar o número de colunas de uma listbox diretamente no código antes de se adicionar os dados através do propriedade CollumnCount. Vamos a um exemplo.
Ex.2.
With ListBox1
.ColumnCount = 3
.AddItem
.List(0, 0) = "Janeiro"
.List(0, 1) = "Fevereiro"
.List(0, 2) = "Março"
.AddItem
.List(1, 0) = "Abril"
.List(1, 1) = "Maio"
.List(1, 2) = "Junho"
.AddItem
.List(2, 0) = "Julho"
.List(2, 1) = "Agosto"
.List(2, 2) = "Setembro"
End With
O exemplo acima adiciona 3 linhas de dados em 3 colunas da lisbox... observe que numa listbox a primeira linha e primeira coluna sempre terão valor 0 (zero) e vai ser sempre no formato (linha,coluna) a posição dos dados dentro desse objeto. Então devemos pensar no posicionamento dos dados como uma matriz onde cada elemento tem uma posição.
0,0
|
0,1
|
0,2
|
1,0
|
1,1
|
1,2
|
2,0
|
2,1
|
2,2
|
Imagem 05 - Listbox com 3 colunas |
De todas as pesquisas que fiz para aprender um pouco mais de VBA na raça, as suas aulas são as melhores. A didática é incrível. Obrigado e muito sucesso!!!
ResponderExcluir