Pessoal, estou começando a me aventurar pelo VBA e preciso de uma ajuda.
Criei um formulário que me permite buscar o ID do cliente, encontrando o ID ele automaticamente preenche os campos e assim permite modificar os dados do cliente. Até ai, sem problemas.
Acontece que gostaria de incluir, alternativamente, uma busca pelo nome completo do cliente. Infelizmente, o nome do cliente e o sobrenome necessariamente tem que ficar em colunas separadas e não encontrei uma forma de realizar a busca em ambas as colunas. Resumindo o que estou tentando fazer:
Usuário insere na textbox o nome e sobrenome do cliente -> VBA procura as informações tanto na coluna "Nome", quanto na coluna "Sobrenome", caso encontre, preencha o restante do formulário.
Vou deixar abaixo o código que fiz até agora, peço o auxílio dos amigos.
Como podem ver, eu coloquei como Range a partir de onde que está o Nome "B2", mas não encontrei uma forma de buscar ao mesmo tempo o Sobrenome que fica a partir de "C2"
Private Sub cmd_nome_but_Click()
Dim intervalo As Range
Dim texto As String
Dim buscador As String
Dim pesquisa
Dim mensagem
buscador = txt_buscanome
Sheets("Cadastro PF").Select
Set intervalo = Range("B2:O500")
On Error GoTo Erro
pesquisa = Application.WorksheetFunction.VLookup(buscador, intervalo, 1, False)
pesquisa1 = Application.WorksheetFunction.VLookup(buscador, intervalo, 2, False)
pesquisa2 = Application.WorksheetFunction.VLookup(buscador, intervalo, 3, False)
pesquisa3 = Application.WorksheetFunction.VLookup(buscador, intervalo, 4, False)
pesquisa4 = Application.WorksheetFunction.VLookup(buscador, intervalo, 5, False)
pesquisa5 = Application.WorksheetFunction.VLookup(buscador, intervalo, 6, False)
pesquisa6 = Application.WorksheetFunction.VLookup(buscador, intervalo, 7, False)
pesquisa7 = Application.WorksheetFunction.VLookup(buscador, intervalo, 8, False)
pesquisa8 = Application.WorksheetFunction.VLookup(buscador, intervalo, 9, False)
pesquisa9 = Application.WorksheetFunction.VLookup(buscador, intervalo, 10, False)
pesquisa10 = Application.WorksheetFunction.VLookup(buscador, intervalo, 11, False)
pesquisa11 = Application.WorksheetFunction.VLookup(buscador, intervalo, 12, False)
pesquisa12 = Application.WorksheetFunction.VLookup(buscador, intervalo, 13, False)
txt_nome = pesquisa
txt_sobrenome = pesquisa1
cmb_sex = pesquisa2
cmb_estadoc = pesquisa3
txt_end = pesquisa4
txt_bairro = pesquisa5
txt_UF = pesquisa6
txt_cidade = pesquisa7
txt_CEP = pesquisa8
txt_tel = pesquisa9
txt_identidade = pesquisa10
txt_CPF = pesquisa11
txt_email = pesquisa12
Exit Sub
Erro:
texto = "Nome não encontrado!"
mensagem = MsgBox(texto, vbOKOnly, vbInformation)