Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Hola, como puedo validar un textbox con númeres entre xx hasta xxx

Estas en el tema de Hola, como puedo validar un textbox con númeres entre xx hasta xxx en el foro de Visual Basic clásico en Foros del Web. Hola amigos, les hago una pregunta, tengo un texbox en cual tengo que validar un número de DNI. El número que ingrese en el DNI ...
  #1 (permalink)  
Antiguo 22/11/2010, 18:44
 
Fecha de Ingreso: junio-2008
Mensajes: 58
Antigüedad: 16 años, 4 meses
Puntos: 0
Hola, como puedo validar un textbox con númeres entre xx hasta xxx

Hola amigos, les hago una pregunta, tengo un texbox en cual tengo que validar un número de DNI.

El número que ingrese en el DNI , tiene que ser de la siguiente manera -->
Mayor a 5.000.000 y Menor a 50.000.000, en caso contrario que me muestre un Textbox con el error...


Por el momento solo consigo validar que solo ingresen dígitos numéricos....

Alguna idea??

Última edición por gohanjaja; 22/11/2010 a las 19:16 Razón: mal el titulo
  #2 (permalink)  
Antiguo 23/11/2010, 03:24
Avatar de pkj
pkj
 
Fecha de Ingreso: julio-2006
Ubicación: Órbita sincrónica
Mensajes: 899
Antigüedad: 18 años, 3 meses
Puntos: 29
Respuesta: Hola, como puedo validar un textbox con númeres entre xx hasta xxx

Para eso tienes < y >

If Valor < 5000000 or Valor > 50000000 Then MsgBox "Error"
__________________
No hay preguntas tontas, solo gente estup..., ¡No!, ¿como era? No hay gente que pregunte a tontos... ¡Nooo!... ¡Vaya cabeza!
  #3 (permalink)  
Antiguo 23/11/2010, 09:29
 
Fecha de Ingreso: junio-2008
Mensajes: 58
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Hola, como puedo validar un textbox con númeres entre xx hasta xxx

Cita:
Iniciado por pkj Ver Mensaje
Para eso tienes < y >

If Valor < 5000000 or Valor > 50000000 Then MsgBox "Error"
El Valor, es una variable que uso previamente ( guardado el valor del campo dni?)
  #4 (permalink)  
Antiguo 23/11/2010, 09:33
 
Fecha de Ingreso: junio-2008
Mensajes: 58
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Hola, como puedo validar un textbox con númeres entre xx hasta xxx

Lo pongo asi

Código:
Private Sub dni_KeyPress(KeyAscii As Integer)
KeyAscii = SoloNumeros(KeyAscii)
Dim valor As Integer
valor = Val(dni)
If valor < 5000000 Or valor > 50000000 Then
MsgBox "Error"
End If

End Sub
Pero al apretar el 5 ya me salta ese error, y si quiero borrar tmb me salta el error....



Alguna otra forma??
  #5 (permalink)  
Antiguo 23/11/2010, 09:49
Avatar de erbuson  
Fecha de Ingreso: noviembre-2009
Mensajes: 701
Antigüedad: 15 años
Puntos: 53
Respuesta: Hola, como puedo validar un textbox con númeres entre xx hasta xxx

Hola, si efectúas la verificación en el EVENTO KeyPress, cada vez que pulsas una tecla, se efectúa la verificación y evidentemente te causa muchos problemas.

Correcto es que en el KeyPress compruebes que se ha pulsado un número, pero lo demás deberías hacerlo bien en el LostFocus (cuando sale del campo de entrada) o tal vez en el Validate que te permite evitar la salida del campo.

Investiga en este sentido y si te quedan dudas, comenta.

Saludos
__________________
Agradecer a quien te enseñó, es enseñar lo que de él aprendiste.
Recuerda: Decir gracias, poco cuesta y mucho vale ...
  #6 (permalink)  
Antiguo 23/11/2010, 10:13
 
Fecha de Ingreso: junio-2008
Mensajes: 58
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Hola, como puedo validar un textbox con númeres entre xx hasta xxx

Código:
Private Sub doc_KeyPress(KeyAscii As Integer)                        'DOCUMENTO

If KeyAscii = vbKeyReturn Then
    KeyAscii = 0
        
    Dim d1 As Long, x As Integer
    
d1 = Val(doc.Text)
        If d1 = 0 Then
            x = MsgBox("Ingrese Solo Digitos Numericos", vbCritical, "Error D.N.I.")
            doc.Text = ""
        
        Else
                    
                If (d1 > 5000000) And (d1 < 50000000) Then
                    Call Form_lostfocus
                
                
                Else
                    x = MsgBox("Ingrese Dentro Del Rango Permitido" + Chr(10) + "Mayor a 5.000.000 y Menor 50.000.000", vbCritical, "Error D.N.I.")
                    doc.Text = ""
                End If
        End If

        
    
End If

numeros = "0123456789," & vbBack
 num = Chr(KeyAscii)
 V = InStr(1, numeros, num)
 If V = 0 Then
    KeyAscii = 0
    
 End If
        
End Sub
Encontre ése en un trabajo viejo , anda bien , pero no trabaja con ADO recorset... intente probar y me tira errores por todos lados...
  #7 (permalink)  
Antiguo 23/11/2010, 10:16
 
Fecha de Ingreso: junio-2008
Mensajes: 58
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Hola, como puedo validar un textbox con númeres entre xx hasta xxx

El "form_lostfocus" hace una busqueda....

EDIT: ya me funca, con el código que puse arriba, de paso se los dejo por si acaso a alguien le sirve
....:D


IMG


Última edición por gohanjaja; 23/11/2010 a las 10:23
  #8 (permalink)  
Antiguo 27/11/2010, 05:32
Avatar de pkj
pkj
 
Fecha de Ingreso: julio-2006
Ubicación: Órbita sincrónica
Mensajes: 899
Antigüedad: 18 años, 3 meses
Puntos: 29
Respuesta: Hola, como puedo validar un textbox con númeres entre xx hasta xxx

La idea era mas simple:
1 - en el dni_keypress controlas que solo entren numeros.

Código vb:
Ver original
  1. Private Sub Dni_KeyPress(KeyAscii As Integer)
  2.   If InStr(1,"0123456789",Chr(KeyAscii))=0 Then KeyAscii=0
  3. End Sub

2 - en el dni_lostfocus controlas que el valor no salga del rango. Si sale del rango se pone el foco en el textbox de nuevo y se avisa del error:

Código vb:
Ver original
  1. Private Sub Dni_LostFocus()
  2.   If Val(dni)<5000000 or val(dni)>50000000 then
  3.     msgbox "Dni no válido"
  4.     dni.setfocus
  5.   End If
  6. End Sub
__________________
No hay preguntas tontas, solo gente estup..., ¡No!, ¿como era? No hay gente que pregunte a tontos... ¡Nooo!... ¡Vaya cabeza!
  #9 (permalink)  
Antiguo 27/11/2010, 10:12
 
Fecha de Ingreso: junio-2008
Mensajes: 58
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Hola, como puedo validar un textbox con númeres entre xx hasta xxx

Me quedo excelente , muchas gracias hermano!!

Etiquetas: hola, textbox
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:19.