Estou usando o seguinte codigo abaixo, porem ao acabar e digitar o CPF, e clicar em ENTER, esta sendo chamado um outro formulario que nao tem nada a ver : Form_Menu
Como devo proceder ao apertar inadivertidamente o ENTER nao acontecer nada ?
Ou entao ao acaber de entrar com o CPF, o mesmo chame a rotina mais abaixo ?
Rotina formatar O CPF
Private Sub Consulta_CPF_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'Limita a Qde de caracteres
Consulta_CPF.MaxLength = 14
Select Case KeyAscii
Case 8, 48 To 57 ' BackSpace e numericos
If Len(Consulta_CPF) = 3 Or Len(Consulta_CPF) = 12 Then
Consulta_CPF.Text = Consulta_CPF.Text & "."
SendKeys "{End}", False
ElseIf Len(Consulta_CPF) = 7 Then
Consulta_CPF.Text = Consulta_CPF.Text & "."
ElseIf Len(Consulta_CPF) = 11 Then
Consulta_CPF.Text = Consulta_CPF.Text & "-"
SendKeys "{End}", False
End If
Case Else ' o resto é travado
KeyAscii = 0
End Select
End Sub
Rotina Pesquisar o CPF , essa esta ok, mas acessada atraves de um botao de comando.
Private Sub Consulte_Click()
Dim C As Variant
'Verificar se foi digitado um nome na primeira caixa de texto
If Consulta_CPF.Text = "" Then
MsgBox "Digite o CPF de um cliente"
Consulta_CPF.SetFocus
GoTo Linha1
End If
Plan3.Activate
With Worksheets("Baixar Estoque").Range("N:N")
Set C = .Find(Consulta_CPF.Value, LookIn:=xlValues, LookAt:=xlPart)
If Not C Is Nothing Then
C.Activate
Consulta_CPF.Value = C.Value
TextBox_Codigo.Value = C.Offset(0, 1).Value
TextBox_Nome.Value = C.Offset(0, 2).Value
TextBox_Perfil.Value = C.Offset(0, 3).Value
TextBox_Detalhes.Value = C.Offset(0, 4).Value
TextBox_Visitas.Value = C.Offset(0, 5).Value
TextBox_Compras.Value = C.Offset(0, 6).Value
'txtEmail.Value = c.Offset(0, 7).Value
'txtNascimento.Value = c.Offset(0, 7).Value
Else
MsgBox "Cliente não encontrado!"
End If
End With
Linha1:
Consulta_CPF = ""
End Sub
Postado : 22/03/2017 12:00 pm