Que evento usar del textbox para ejecutar un procedimiento.

Estimado amigo. Resulta que quiero ejecutar un procedimiento que una vez ingresado un número en una caja de texto me diga si ha sido ingresado o no y que me vuelva el foco al TextBox para que vuelva a introducir un número. Lo puse en el gotfocus y en el change y me vuelve a preguntar porque toma el foco nuevamente. Adónde va el código para que funcione correctamente???
Igual, te paso el código para que me digas si es que tengo algo mal en él.

Dim rstpestamos As New ADODB.Recordset
Dim strVerDevuelto As String
Dim rstverdevuelto As New ADODB.Recordset
AbrirBase
Set rstPrestamos = New ADODB.Recordset
rstPrestamos.Open "SELECT Voluntarios.NumVoluntario,Voluntarios.ApeVol,Voluntarios.NomVol,Prestamos.CodMaterial,PRESTAMOS.Cantidad,stockmateriales.DescripcionMaterial From (VOLUNTARIOS INNER JOIN PRESTAMOS ON VOLUNTARIOS.NumVoluntario = PRESTAMOS.NumVoluntario)INNER JOIN STOCKMATERIALES ON PRESTAMOS.CodMaterial = STOCKMATERIALES.CodMaterial WHERE NumPrestamo LIKE '" & Trim(txtNumeroConstPrestamo.Text) & "%'", Base, adOpenStatic, adLockOptimistic
txtDevolucion(0).Text = ""
txtDevolucion(1).Text = ""
txtDevolucion(2).Text = ""
txtNomyApeSolicitMat.Text = ""
txtNumVoluntario.Text = ""
With rstPrestamos
If .EOF = True Then
MsgBox "Constancia Inexistente.", vbExclamation, "VERIFICACIÓN DE INGRESO DE CONSTANCIA"
'txtNumeroConstPrestamo.Text = ""
txtDevolucion(0).Text = ""
txtDevolucion(1).Text = ""
txtNumVoluntario.Text = ""
txtDevolucion(2).Text = ""
Exit Sub
txtNumeroConstPrestamo.SetFocus
txtNomyApeSolicitMat.Text = ""
'txtNumeroConstPrestamo.SetFocus
'Exit Sub
Else
txtDevolucion(0).Text = !CodMaterial
txtDevolucion(1).Text = !DescripcionMaterial ' Descripción
txtNumVoluntario.Text = !NumVoluntario
txtDevolucion(2).Text = !Cantidad 'Cantidad
txtNomyApeSolicitMat.Text = !ApeVol & " " & !NomVol 'Nombre y Apellido
End If
End With
Base.Close

Desde ya muchas gracias. Saludos!!!

1 respuesta

Respuesta
1

Supongo que es cuando den ENTER en esa caja de texto, para eso debes utilizar el evento Keypress, dentro de ese evento verificas que la tecla digitada sea el ENTER que es código ASCII 13 y cuando esto se cumpla ejecutas el código.

Supongo que estará bien la respuesta. No la he podido constatar porque ya resolví el problema. Te pongo muy bien por si alguien busca respuestas sobre este tema y así la va a querer ver ya que te paso la solución. El código lo puse en un commandButton y aparte hice que en el text se seleccione el texto si no es lo que busco para que me permita escribir nuevamente. Saludos y gracias por responder.

Private Sub txtBuscaPorApellido_GotFocus()
Me.txtBuscaPorApellido.SelStart = 0
Me.txtBuscaPorApellido.SelLength = Len(Me.txtBuscaPorApellido.Text)
End Sub

Private Sub txtBuscaPorApellido_Change()

If rstSocios.EOF = True Then
MsgBox "NO EXISTE SOCIO", vbInformation, "Búsqueda de Socios"
txtBuscaPorApellido_GotFocus
Exit Sub
End If

End Sub

GRACIAS!!!!!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas