Auto completar em Lista de Validação Excel

Neste artigo você irá aprender como pesquisar em lista de validação no Excel com auto completar.

No artigo você aprenderá passo-a-passo e terá os códigos de como desenvolver esta solução e veja no vídeo acima como fazer validação de dados com autocompletar ao digitar.

Lista de Validação de Dados no Excel

A lista de validação cria uma lista suspensa aonde você conseguirá selecionar itens à partir de uma tabela ou lista de dados.

Veja abaixo uma tabela aonde temos os dados da tabela.

Auto completar e selecionar em lista Excel 1

A primeira tarefa que temos então é criar intervalos nomeados que serão usados na validação de dados de modo que ao aumentar ou reduzir as tabelas as listas são redimensionadas.

Clique em Fórmulas->Definir nome e selecione a coluna com a tabela =Tabela2[Vendedor].

Auto completar e selecionar em lista Excel 2

Após isso clique em Arquivo->Opções->Personalizar Faixa de Opções e marque a opção Desenvolvedor.

Clique na guia Desenvolvedor e em Visual Basic.

No VBE clique em Inserir->Form e desenhe conforme abaixo.

Clique em Ferramentas e desenhe um Rótulo e digite o texto conforme abaixo.

Clique em Ferramentas acima e desenhe também a Caixa de Listagem.

Após isso também desenhe um botão e terá então o formulário conforme a próxima imagem.

Clique então em Caixa de Listagem e na configuração RowSource e digite =lClientes, ou o intervalo que criou anteriormente em intervalos nomeados.

Veja então que os dados são retornados conforme pode enxergar no formulário.

Altere também MatrchEntry para a opção 1.

Pressione F5, veja que temos já um formulário com os dados retornando.

Auto completar e selecionar em lista Excel 3

Código para Programar Autocompletar Lista de Validação no Excel

Após isso pressione ALT+F11 e clique em Inserir->Módulo.

Insira o código abaixo no módulo.

Nele temos então a chamada do formulário e a mudança de validação de dados automaticamente ao chamar.

Public Sub lsForm()
    frmPesquisa.Show vbModal
End Sub

Public Sub lsCarregarLista()
    If IsDataValidation(ActiveCell) Then
        frmPesquisa.listaPesquisa.RowSource = ActiveCell.Validation.Formula1
    End If
End Sub

Function IsDataValidation(rng As Range) As Boolean
    On Error Resume Next
    
    DVType = rng.Validation.Type
    
    On Error GoTo 0
    
    If DVType = 3 Then
        IsDataValidation = True
    Else
        IsDataValidation = False
    End If
End Function

Public Sub lsInserir()
    ActiveCell.Value = frmPesquisa.listaPesquisa.List(frmPesquisa.listaPesquisa.ListIndex)
    Unload frmPesquisa
End Sub
Private Sub CommandButton1_Click()
    lsInserir
End Sub

Private Sub listaPesquisa_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    lsInserir
End Sub

Private Sub listaPesquisa_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If KeyAscii = 27 Then
        Unload Me
    Else
        If KeyAscii = 13 Then
            lsInserir
        End If
    End If
End Sub

Private Sub UserForm_Activate()
    lsCarregarLista
End Sub

Clique agora na árvore de objetos na planilha aonde irá colocar a validação de dados.

Coloque este código

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
    lsForm
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    lsCarregarLista
End Sub

Por fim nós temos o autocompletar conforme a validação de dados selecionada em uma determinada coluna.

Auto completar e selecionar em lista Excel 4

Pressione ALT+F11 e clique em Desenvolvedor->Visual Basic e clique em Macros ali selecione LSFORM e selecione um atalho com CTRL+L.

Para criar a lista de validação pode também acompanhar a vídeo-aula ao topo deste artigo ou senão no botão de download no link abaixo.

Download Planilha Auto completar em Lista de Validação Excel

Clique no botão abaixo para realizar o  download do arquivo de exemplo:

Baixe a planilha


Marcos Rieper

Pai, marido, professor e consultor em Excel.

Obrigado por ler este artigo, este blog foi criado para difundir o conhecimento em Excel à todos.

Divulgamos novos artigos nas redes sociais, basta clicar nos ícones abaixo.

Excel não precisa ser complicado

Assine nossa newsletter e receba dicas práticas para dominar o excel