Skip to content

Como preencher ou carregar a ComboBox com a tabela do vetor no Excel sem repetir os dados (exemplo)

13 de junho de 2021

Se você precisar preencher ou carregar dados em um ComboBox com tabela de vetor em Excel, provavelmente será necessário fazê-lo sem repetir nenhum dado. Preencher ou carregar a Combo Box com um vetor permitirá que nossos dados sejam visualizados de uma forma mais confortável.

Matrizes são um conjunto de valores do mesmo tipo e vetores são matrizes unidirecionais, antes de trabalhar com vetores é importante que você aprenda o que são vetores dinâmicos e como eles são usados ​​e sob que preservativos são usados ​​e como redimensioná-los.

Isso pode parecer bastante complicado para aqueles que não lidam com o metodologia correta, e é que essa planilha tem tantas funções que é difícil conhecê-las todas.

Configure o ComboBox

Para começar, você deve ter as informações que deseja adicionar ao ComboBox bem ordenadas, uma lista dentro de uma tabela seria o melhor caminho.

Agora, o próximo passo é abrir ou acessar o Editor do Visual Basic, seja por meio da guia “Programador“Ou com os comandos”Alt + F11”.

A seguir, dentro do editor, procure o botão “Inserir”Localizado na faixa superior, e das opções apresentadas, optamos pelo denominado“UserForm”.

Desta forma, haverá uma janela pop-up, onde será adicionado a partir do menu inferior de “Controles” o elemento “Caixa combo”.

Em seguida, na parte inferior esquerda da tela, o nome da caixa pode ser alterado para o que o usuário desejar. O próximo passo é clicar duas vezes na janela do formulário.

Assim, as configurações do UserForm serão abertas onde, do lado direito, haverá uma seta com o símbolo “Eventos (editar)“, Das quais”Inicializar”. Esta ação adicionará os dados pertinentes à janela, onde começará a criar o código pertinente para o que estamos procurando.

O código

Neste caso, começaremos escrevendo uma série de variáveis ​​que irão fornecer e permitir que o formulário seja capaz de trabalhe corretamente. Para isso, deve ser preenchido da seguinte forma:

Sub UserForm_Initialize privado ()

Dim UniqueValue As Collection

Dim eng As Range

Dim cell como range

Dim sh como planilha

Dim vNum como variante

Defina sh = ThisWorkbook.Worksheets (“Sheet1”)

Defina Rng = sh.Range (“D4”, sh.Range (D4) .End (x1Down))

Definir UniqueValue = Nova coleção

On Error Resume Next

Para cada célula em Rng.Cells

UniqueValue.Add cell.Value, CStr (cell.Value)

Próxima célula

No erro GoTo 0

Para cada vNum em UniqueValue

Me.UserForm.AddItem vNum

Próximo vNum

Para terminar, selecione o “Jogar“, A seta verde,”Prosseguir“Ou”F5“Para executar o ComboBox, e desta forma nos levará diretamente para a planilha.

Como funciona esse código?

A importância de escrever o código apresentado acima é que nele existem certos elementos que permitem que os dados do ComboBox do Excel não se repitam.

Nesse sentido, os comandos devem ser totalmente respeitados. Na verdade, uma das variáveis ​​que passam a omitir os registros repetidos é “On Error Resume Next”.

Além disso, o “No erro GoTo 0”, Da mesma forma influencia como o formulário irá proceder para tirar os dados que não são únicos. Agora, algo que deve ser levado em consideração é o nome da folha que está sendo trabalhada.

Por quê? Bem, porque o título dele, deve ser escrito como está na linha “Defina sh = ThisWorkbook.Worksheets (“Sheet1”)“De código. Sendo “Folha1”Apenas um exemplo.

ícone do excel

Além disso, quanto ao nome que demos ao ComboBox, também será imprescindível lembrá-lo e utilizá-lo corretamente.

Desde então, deve ser escrito na parte do código que diz “Me.UserForm.AddItem vNum“, Substituindo o”UseForm”Pelo título escolhido.

E desta forma, será adicionada uma ComboBox Excel onde os valores ou dados carregados não se repetem.

Porém, como se viu, esse procedimento costuma ser colocado em prática por usuários que já possuem algum manejo das funções que esta ferramenta de cálculo inclui.

Portanto, se você quiser continuar trabalhando com este tipo de processo, algum tipo de curso de Excel pode ser necessário ou se dedicam a investigar todas as possibilidades com base na tentativa e erro.

Assim como as ComboBoxes funcionam com vetores, também podem funcionar com dados de intervalo. Os dados do intervalo também podem ser transmitidos sem repetição.