Visual Basic - Validación de solo letras y número (textbox)

Life is soft - evento anual de software empresarial
 
Vista:

Validación de solo letras y número (textbox)

Publicado por fed (1 intervención) el 09/11/2010 02:41:26
Buenas, que tal!...quería saber si puede validar un textbox solamente para letras o números, sin deshabilitar el teclado con un keyascii, o sea, con un message que suspenda la acción y ponga un cartel de aviso.

Saludos!!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Validación de solo letras y número (textbox)

Publicado por XHkrElite (518 intervenciones) el 09/11/2010 05:48:23
Intenta con estas codigos:

Rem no permitir letras en el textbox
-------------------------------------------------------------------------------------------------------------------------
1
2
3
4
5
6
Private Sub Text1_KeyPress(KeyAscii As Integer)
If (KeyAscii >= 97) And (KeyAscii < 122) Or (KeyAscii >= 65) And (KeyAscii < 90) Then
  MsgBox "Nada de letras"
  KeyAscii = 8
End If
End Sub
-------------------------------------------------------------------------------------------------------------------------
Rem no permitir numeros en el textbox
-------------------------------------------------------------------------------------------------------------------------
1
2
3
4
5
6
Private Sub Text1_KeyPress(KeyAscii As Integer)
        If (KeyAscii >= 48) And (KeyAscii <= 57) Then
                   MsgBox "Nada de numeros"
                   KeyAscii = 8
        end if
End Sub
-------------------------------------------------------------------------------------------------------------------------
No permitir simbolos
-------------------------------------------------------------------------------------------------------------------------
1
2
3
4
5
6
7
Private Sub Text1_KeyPress(KeyAscii As Integer)
If (KeyAscii >= 33) And (KeyAscii <= 47) Or (KeyAscii >= 58) And (KeyAscii <= 100) Or _
   (KeyAscii >= 91) And (KeyAscii <= 96) Or (KeyAscii >= 123) And (KeyAscii <= 126) Then
    MsgBox "Nada de simbolos"
    KeyAscii = 8
End If
End Sub
-------------------------------------------------------------------------------------------------------------------------
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por Josue (27 intervenciones) el 11/11/2010 17:20:18
Bueno ese metodo que dice el compañero anterior lo probe de mil formas y nunca me funciono pero encontre en una pagina uno que si funciona espero que a ti tambien

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Private Sub textbox_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles textbox.KeyPress
 
    If Char.IsDigit(e.KeyChar) Then
        e.Handled = False
    ElseIf Char.IsControl(e.KeyChar) Then
        e.Handled = False
    ElseIf Char.IsSymbol(e.KeyChar) Then
        e.Handled = False
    ElseIf Char.IsSeparator(e.KeyChar) Then
        e.Handled = False
    ElseIf Char.IsWhiteSpace(e.KeyChar) Then
        e.Handled = False
    Else
        e.Handled = True
    End If
 
    Me.textbox.Text = Trim(Replace(Me.textbox.Text, "  ", " "))
    textbox.Select(textbox.Text.Length, 0)
 
End Sub

ese es para que solo acepte numeros, la ultima parte donde dice Me.textbox............ es para que no acepte espacios, visualmente lo agrega pero cuando se va a escribir el siguiente caracter borra el espacio y pone los caracteres seguidos, si no lo necesitas asi lo puedes quitar.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Private Sub textbox_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles textbox.KeyPress
    If Char.IsLetter(e.KeyChar) Then
        e.Handled = False
    ElseIf Char.IsControl(e.KeyChar) Then
        e.Handled = False
    ElseIf Char.IsSeparator(e.KeyChar) Then
        e.Handled = False
    Else
        e.Handled = True
    End If
 
    Me.textbox.Text = Trim(Replace(Me.textbox.Text, " ", ""))
    textbox.Select(textbox.Text.Length, 0)
End Sub

Este es para que solo acepte letras, no acepta numeros y la ultima es igual al anterior

espero te haiga servido
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por fed (1 intervención) el 12/11/2010 19:51:17
Perdón, pero no entiendo donde poner ese codigo. ¿Iría dentro del textbox en evento keypress?.

Saludos!.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por Ariel Estrada (1 intervención) el 12/05/2015 02:31:04
Hola, igual que tu, estoy empezando de nuevo o más bien desempolvando lo que aprendí en la universidad....

Para llegar a :

Private Sub Text1_KeyPress(KeyAscii As Integer)

Te colocas sobre un textbox1 y haces doble clik, con eso entras al código.
En el menú desplegable de arriba a la derecha puedes elegir KeyPress

Despues es cosa de copiar y pegar los comandos que de gran ayuda me han sido a mi!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por ALEXANDER (1 intervención) el 10/10/2011 21:01:32
bien el código esta muy bueno pero hay un detalle que acepta el signo "=" y el signo "+" y que no puedo agregar puntos para agregar números decimales
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Validación de solo letras y número (textbox)

Publicado por Mario ebp (3 intervenciones) el 12/10/2016 23:14:06
Hola. Se que el post es antiguo pero aún así a alguien le servirá.
Para poder meter símbolos y decimales debes añadir esto al código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Private Sub ENTRAtextbox_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles EntraTextBox.KeyPress
 
        If Char.IsPunctuation(e.KeyChar) Or Char.IsDigit(e.KeyChar) Then
            e.Handled = False
        ElseIf Char.IsControl(e.KeyChar) Then
            e.Handled = False
        ElseIf Char.IsSymbol(e.KeyChar) Then
            e.Handled = False
        ElseIf Char.IsSeparator(e.KeyChar) Then
            e.Handled = False
        ElseIf Char.IsWhiteSpace(e.KeyChar) Then
            e.Handled = False
        Else
            e.Handled = True
        End If
 
        Me.EntraTextBox.Text = Trim(Replace(Me.EntraTextBox.Text, "  ", " "))
        EntraTextBox.Select(EntraTextBox.Text.Length, 0)
 
    End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por tu mama (1 intervención) el 11/09/2017 17:36:30
oe te dire que tu codigo es basura ... ta pa comida de perro y eso que el perro lo vomita .... SANAZO
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por Pako (1 intervención) el 19/12/2017 16:28:18
Genial aportación. Y estupendamente redactada.
En fin, voy a añadir la que creo es la mejor opción porque siempre habrá alguien que venga buscando esto:

1
2
3
4
5
Private Sub txtCuadro_KeyPress(sender As Object, e As KeyPressEventArgs) Handles txtCuadro.KeyPress
    If Not (IsNumeric(e.KeyChar)) And Asc(e.KeyChar) <> 8 Then
        e.Handled = True
    End If
End Sub

Muy sencillo. Si la entrada no es un número y tampoco la tecla de borrado (retroceso), utilizamos un Handled para el evento (e.Handled = true). Esto hace que se ignore la tecla introducida. Se podría añadir cualquier código ASCII que deseemos. De esta forma podríamos, por ejemplo, permitir también la entrada del punto o la coma para números decimales. Conviene no olvidarse del retroceso, ya que cualquier usuario que teclee un número incorrecto intentará borrarlo inmediatamente con esta tecla y no aceptarlo produce una mala sensación de uso.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por Ramon (1 intervención) el 31/07/2023 20:46:15
hola que tal, me funciona bien para un grid pero requiero solo el punto decimal solamente como podría hacerle?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por patxi (1 intervención) el 15/02/2012 12:35:31
mai servido mucho!

solo pasandolo a c# y cambiando alguna cosa de solo permitir numeros, para que no me deje simbolor.

muchas graicias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por aleja (1 intervención) el 28/03/2012 23:55:01
que le cambiaste paar que teacepte numeros decimales ?¿?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por ismael (1 intervención) el 02/07/2013 21:06:08
como le puedo hace para que en un textbox acepte numeros y el simbolo de guion(-)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por Rigo (1 intervención) el 31/07/2023 22:52:56
Contactame via mail , y te explico
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por Johnny (1 intervención) el 07/10/2013 15:11:37
Muchas gracias man, sos un capo, me ha sido de mucha ayuda!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por Itzel (1 intervención) el 05/12/2013 02:11:50
Como puedo borrar...yo tengo ese mismo codigo pero no se como hacer posible borrar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por Gabriel (1 intervención) el 09/01/2015 20:33:15
En el nivel que tienes se ve mal que no sepas el vocabulario correcto, no se dice "haiga servido" se dice "haya servido", tampoco soy erudito de nada y soy humano y tengo errores, lo hago en buen plan e igual me gusta que me marquen errores para mejorar.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-1
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por Anrew (1 intervención) el 08/05/2015 18:37:07
Buen validación!!! pero si tuviera varias cajas de texto .. no
crees que seria un poco tedioso y ocuparía mucho espacio.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por Lucas (1 intervención) el 29/07/2013 15:21:29
Muy bueno eso, a mi me anduvo re bien, Muchas Gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por Guillermo (1 intervención) el 01/01/2014 21:02:57
Muy bueno!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por Car (1 intervención) el 19/01/2014 00:46:39
Ya entendi pq no funcionan tus codes:

hay que remplazar "KeyPress(KeyAscii As Integer)" por
"KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)" PARA VBA

Y TODO CORRE oK..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Validación de solo letras y número (textbox)

Publicado por Jhon Astaiza Uribe (1 intervención) el 15/03/2014 02:17:01
Excelente tu aporte, solo te invito a corregir para el caso de no permitir simbolos

(KeyAscii >= 58) And (KeyAscii <= 64)


Muchas gracias por compartir
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por Rigoberto Olvera Aguilar (1 intervención) el 31/03/2015 12:05:03
Funciona correctamente...saludos, lo ingrese en el compilador de VB de excel ....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JoaoM
Val: 58
Ha aumentado 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

RE:Validación de solo letras y número (textbox)

Publicado por JoaoM (79 intervenciones) el 12/05/2015 23:13:16
No se sabe quien esta respondiendo a quien por el desorden de las fechas.

Ya es hora de tener un software que deje las fechas del posteo ordenadas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 107
Ha disminuido su posición en 2 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

RE:Validación de solo letras y número (textbox)

Publicado por xve (208 intervenciones) el 13/05/2015 08:20:55
Hola JoaoM, en la parte superior de esta pagina, puedes seleccionar como quieres visualizar el foro, si en forma de árbol, o en en forma cronológica... Si seleccionas en forma cronológica, los visualizaras por fechas.

Si te fijas, ahora se visualizan las respuestas en forma de árbol...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JoaoM
Val: 58
Ha aumentado 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

RE:Validación de solo letras y número (textbox)

Publicado por JoaoM (79 intervenciones) el 13/05/2015 23:07:57
Gracias xve
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Validación de solo letras y número (textbox)

Publicado por Jorge (2 intervenciones) el 10/09/2015 17:07:27
Todos estos codigos estan bien pero todos tiene un pequeño problema si se pega desde el portapapeles pega cualquier cosa.
¿alguien sabe como solucionarlo ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Validación de solo letras y número (textbox)

Publicado por Ricardo Teran (1 intervención) el 13/06/2017 20:25:13
Muchisimo mas sencillo y funcional.

Para solo Numeros
1
2
3
4
5
Private Sub txt_casilla_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If Not IsNumeric(Chr(KeyAscii.value)) Then
        KeyAscii.value = 8
    End If
End Sub

Para cualquier caracter menos numeros

1
2
3
4
5
Private Sub txt_casilla_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If IsNumeric(Chr(KeyAscii.value)) Then
        KeyAscii.value = 8
    End If
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Validación de solo letras y número (textbox)

Publicado por desiree (1 intervención) el 31/07/2017 15:58:07
Hola chicos los códigos de validación esta buenísimos, lo que es un poco tedioso es colocarlo en cada caja de texto, quiero hacerlo una función para luego llamarlos en cada caja de texto y así ahorra lineas de código lo que no se es como hacerlo hasta ahora
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Validación de solo letras y número (textbox)

Publicado por Syamananda (1 intervención) el 16/08/2017 03:28:59
Muchas gracias Ricardo, muy útil!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Validación de solo letras y número (textbox)

Publicado por Angel Estrada (1 intervención) el 17/10/2018 22:02:51
1
2
3
4
5
6
7
8
9
10
11
If Char.IsDigit(e.KeyChar) Then
    e.Handled = False
 
ElseIf e.KeyChar = ChrW(8) Then 'BACKSPACE
    e.Handled = False
 
ElseIf e.KeyChar >= ChrW(97) And e.KeyChar < ChrW(122) Or e.KeyChar >= ChrW(65) And e.KeyChar < ChrW(90) Then
    e.Handled = False
Else
    e.Handled = True
End If
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Yenier
Val: 17
Ha aumentado su posición en 7 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Validación de solo letras y número (textbox)

Publicado por Yenier (4 intervenciones) el 08/11/2020 19:31:51
Vi este video y me funcionó a las mil maravillas, en la descripción comparten el código:
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Yenier
Val: 17
Ha aumentado su posición en 7 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Validación de solo letras y número (textbox)

Publicado por Yenier (4 intervenciones) el 22/12/2020 02:55:03
Vi este video y me funcionó y me permitió descargar el proyecto , se los comparto! https://www.youtube.com/watch?v=4CNs71-27pg&t=3s
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Yenier
Val: 17
Ha aumentado su posición en 7 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Validación de solo letras y número (textbox)

Publicado por Yenier (4 intervenciones) el 22/12/2020 06:35:02
Vi este video y me funcionó y me permitió descargar el proyecto , se los comparto! https://www.youtube.com/watch?v=ATDyPCUVtHU&t=2s
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Validación de solo letras y número (textbox)

Publicado por Mertsiu Joaquin (1 intervención) el 07/02/2023 17:01:51
1 ' Para poder entrar al TextBox8 y escribir el codigo, haga doble clik en el TexBox (en el diseño) y luego pongan el evento KeyPress

2 Private Sub TextBox8_KeyPress(sender As Object, entrada As KeyPressEventArgs) Handles TextBox8.KeyPress

3 entrada.Handled = Not IsNumeric(entrada.KeyChar) And Not Char.IsControl(entrada.KeyChar)

4 If Not IsNumeric(entrada.KeyChar) And Not Char.IsControl(entrada.KeyChar) Then

5 MsgBox("Permitido sólo números", vbCritical, "Atención")

6 End If

7 End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar