Preenchendo uma
ComboBox
Muitas vezes quando trabalhamos
com programação se faz necessário criar interfaces mais agradáveis ao usuário final
a fim de facilitar a utilização da ferramenta criada. Com isso muitas vezes é necessário
que criemos listas de seleção quando queremos que o usuário faça uma escolha
dentre uma lista de opções pré-determinadas.
As ComboBox, também conhecidas
como caixa de seleção, são itens usados especialmente para essa função, através
delas o usuário pode escolher um item dentro de uma lista pré-determinada ao
clicar em uma seta ao lado da caixa de seleção. Na Figura 1 temos um exemplo de
ComboBox.
Figura 1: Exemplo de ComboBox
Mas como fazer uso dessas caixas
de seleção, bom não é um bicho de sete cabeças e você vai aprender agora como
preenche-las.
Vamos mostrar três formas de preencher
essas ComboBox que poder ser usadas de acordo com a sua necessidade, vamos a
ela:
1º Forma:
A primeira e mais simples forma
se se preencher uma ComboBox e utilizando a janela de propriedade da ComboBox
no canto inferior esquerdo da tela.
Ao selecionar a ComboBox onde
deseja que tenha a lista suspensa vá na janela propriedades da ComboBox, la você
irá encontrar uma propriedade chamada RowSource nessa propriedade digite entre
aspas o nome da planilha seguido do sinal de “!” e o intervalo onde estão os
valores que devem estar na ComboBox conforme abaixo:
"planilha!A2:A10"
O problema dessa forma é que ela mostra onde começa e onde
termina o intervalo que deve estar listado na ComboBox.
2º Forma:
A segunda forma é parecida com a
primeira, porém, ela será digitada não na janela de propriedade, mas sim como
código na form na ação inicialize da UserForm.
Nessa forma podemos verificar
também que nós não limitamos o intervalo de uma célula a outra, mas sim até a última
célula preenchida. Para isso a ação inicialize da UserForm digitaremos o código
da seguinte forma: primeiro digita-se o nome da ComboBox seguido de “.RowSourse
=” depois entre aspas digita-se o nome da planilha onde esta as informações que
devem estar listadas na ComboBox seguido do código para achar a última linha
preenchida da coluna conforme exemplo abaixo.
ComboBox1.RowSource = "Plan2!A1:A"
& Sheets("planilha").Range("A1").End(xlDown).Row
Nesse código será preenchido até
a última linha preenchida da coluna da planilha informada.
3º Forma:
A terceira forma é a mais complexa
e complete forma de se preencher a ComboBox. Nela nós vamos usar uma estrutura
de repetição, a saber a estrutura Do While... Loop, afim de preencher a
ComboBox.
Para isso usaremos a estrutura Do
While... Loop para preencher a nossa ComboBox informando que ele deve adicionar
os dados da linha da vez enquanto ela não estiver vazia, ou seja, enquanto a estrutura
estiver repetindo ela estará preenchendo a ComboBox conforme código abaixo. Lembrando
que nessa estrutura de repetição temos que usar uma variável para representar a
linha da tabela a qual estaremos incrementando a cada Loop executado.
lin = 1
Do While
Sheets("Plan2").Cells(lin, 1) <> ""
ComboBox2.AddItem
Sheets("Plan2").Cells(lin, 1)
lin = lin + 1
Loop
Para preencher uma ComboBox as três
formas acima funcionaram, cada uma com a sua particularidade, estando com o
programador a escolha do que lhe melhor atende naquele momento.
Vídeo explicativo: https://www.youtube.com/watch?v=pQG8Z3hDKe8
Nenhum comentário:
Postar um comentário