Programación General > Visual Basic para principiantes
Texbox Que Solo Admita Números
cj_sw:
Hola, estoy dando mis primeros pasos en VB y la duda que tengo es
En un TexBox ingreso datos para realizar una división, lo pude hacer pero si durante la ejecución ingreso letras me las toma y luego da error
Como hago para que solo admita numeros ?
Para evitar la división por 0 puse este código,
ElseIf TxtTalla = 0 Then
MsgBox "No se puede dividir por 0", vbCritical, "Recuerda que"
TxtTalla.SetFocus
Exit Sub
Si hay otra forma les agradecería el dato
Gracias
RadicalEd:
Hola novato bienvenido al foro, como esta es una pregunta muy preguntada (jejeje valga la redundancia) si quieres puedes usar el buscador del foro, que queda en la parte inferior.
Si quieres hacer que un TextBox acepte solo números puedes hacer lo siguiente:
--- Código: Text ---If (KeyAscii < 48 Or KeyAscii > 57) Then KeyAscii = 0End Sub Ojala te sirva.
Chao
Toph:
--- Citar ---Como hago para que solo admita numeros ?
--- Fin de la cita ---
:) bueno es basicamente como dijo RadicalEd solo que esa rutina que ha posteado tiene un problema y es que no acepta la tecla BACKSPACE es decir si te equivocas y quieres borrar el dato no puedes hacerlo aqui posteo la forma en que eso se corrige, :comp: cj_sw tienes que poner esta subrutina para cada textbox al que le quieras restringir la entrada de otros caracteres que no sean numeros
--- Código: Text ---Private Sub text1_keypress(keyascii As Integer)If keyascii = 8 Then '8 es la tecla backspace GoTo salirEnd If If (keyascii < 48 Or keyascii > 57) Then keyascii = 0 End Ifsalir:End Sub
ojo si estas usando numeros con punto decimal tienes que modificar este codigo para que acepte el punto decimal (que en realidad es la coma, es numero 44)
saludos :hola:
x.cyclop:
También puedes usar la función IsNumeric(). :whistling:
RadicalEd:
--- Cita de: "Tania_D" ---
--- Código: Text ---Private Sub text1_keypress(keyascii As Integer)If keyascii = 8 Then '8 es la tecla backspace GoTo salirEnd If If (keyascii < 48 Or keyascii > 57) Then keyascii = 0 End Ifsalir:End Sub saludos :hola:
--- Fin de la cita ---
Puede reacomodar tú código de esta manera sin tantos If
--- Código: Text ---Private Sub text1_keypress(keyascii As Integer)If (keyascii < 48 Or keyascii > 57) And KeyAscii == 8 Then keyascii = 0 End Ifsalir:End Sub
Navegación
[#] Página Siguiente
Ir a la versión completa