- 22 Mai 2019 às 14:56
#44095
Olá, criei um formulário para pesquisa de satisfação. O primeiro campo é uma TextBox com o código de Cliente.
Configurei para que a razão social e UF apareçam nas TextBox seguintes.
O problema é, se o usuário digita um código que não está na lista abre a mensagem de erro. Gostaria de colocar uma condição de que se o vlookup não retornasse um resultado apareceria uma MsgBox "Código Incorreto" e o usuário pudesse alterar o valor digitado sem fechar o formulário.
Usei o código abaixo para criar as condições que queria.
Public Function PesquisarClientes(formulario As UserForm1)
Cliente = Application.WorksheetFunction.VLookup(TextBoxCod.Text, Sheets("TODOS").Range("CADCLIENTES"), 2, False)
UF = Application.WorksheetFunction.VLookup(TextBoxCod.Text, Sheets("TODOS").Range("CADCLIENTES"), 3, False)
TextBoxCliente = Cliente
ComboBox1 = UF
End Function
Public Function CadastroIncorreto(formulario As UserForm1)
Dim CadastroCorreto As String
CadastroCorreto = "=CADCLIENTES"
If TextBoxCod <> CadastroCorreto Then
MsgBox "Cadastro Incorreto"
End If
End Function
Private Sub CommandButton1_Click()
PesquisarClientes UserForm1
End Sub
Configurei para que a razão social e UF apareçam nas TextBox seguintes.
O problema é, se o usuário digita um código que não está na lista abre a mensagem de erro. Gostaria de colocar uma condição de que se o vlookup não retornasse um resultado apareceria uma MsgBox "Código Incorreto" e o usuário pudesse alterar o valor digitado sem fechar o formulário.
Usei o código abaixo para criar as condições que queria.
Public Function PesquisarClientes(formulario As UserForm1)
Cliente = Application.WorksheetFunction.VLookup(TextBoxCod.Text, Sheets("TODOS").Range("CADCLIENTES"), 2, False)
UF = Application.WorksheetFunction.VLookup(TextBoxCod.Text, Sheets("TODOS").Range("CADCLIENTES"), 3, False)
TextBoxCliente = Cliente
ComboBox1 = UF
End Function
Public Function CadastroIncorreto(formulario As UserForm1)
Dim CadastroCorreto As String
CadastroCorreto = "=CADCLIENTES"
If TextBoxCod <> CadastroCorreto Then
MsgBox "Cadastro Incorreto"
End If
End Function
Private Sub CommandButton1_Click()
PesquisarClientes UserForm1
End Sub