TEXTBOX PERDE O FOCO

USUARIO.EXCLUIDOS 05/04/2004 14:44:11
#18929
O código abaixo funciona mas o TxtDesc perde o foco mesmo com o SetFocus, ou seja, ele focaliza depois pula para outro TextBox. O que fazer?

Private Sub TxtDesc_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim Desc As String


Set DB1 = OpenDatabase("C:\Estoque\Materiais.mdb")
Desc = "SELECT Descrição FROM Localizacao WHERE Código = '" & TxtCod.Text & "'"
Set TB1 = DB1.OpenRecordset(Desc)
If TB1.RecordCount = 0 Then
If Not Testa(TxtDesc.Text, 1) Then
TxtDesc.SetFocus
Exit Sub
End If
End If
TxtDesc.Text = TB1!Descrição

End Sub

Function Testa(Texto As String, Avisar As Byte) As Boolean
If Texto = "" Then
If Avisar = 1 Then
MsgBox "Material não casdastrado. Favor entrar com a descrição!", vbInformation, " Aviso ao usuário"
End If
End If
End Function
USUARIO.EXCLUIDOS 05/04/2004 14:59:24
#18932
Resposta escolhida
Já tentou fazer:

Private Sub TxtDesc_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim Desc As String
Set DB1 = OpenDatabase("C:\Estoque\Materiais.mdb")
Desc = "SELECT Descrição FROM Localizacao WHERE Código = '" & _
TxtCod.Text & "'"
Set TB1 = DB1.OpenRecordset(Desc)
Desc = Empty
If TB1.RecordCount = 0 Then
If Not Testa(TxtDesc.Text, 1) Then
Cancel = False
End If
Else
TxtDesc.Text = TB1!Descrição
End If
End Sub

Function Testa(Texto As String, Avisar As Byte) As Boolean
If Texto = "" Then
If Avisar = 1 Then
MsgBox "Material não casdastrado. Favor entrar com a descrição!", _
vbInformation, _
"Aviso ao usuário"
End If
End If
End Function

Tópico encerrado , respostas não são mais permitidas