Validación de numero en casilla de texto

Hola estoy trabajando en exel con la aplicación de editor de código de VB que posee exel.

Resulta que estoy haciendo un formulario y tengo problemas al querer que solo en las casillas de texto me deje ingresar solo números. Tengo un código que me han proporcionado que ma ha resultado muy útil ya que funciona a la perfección; pero dicho código sirve para una sola caja de texto ya que eh intentado poner en las demás cajas de texto y no ubo respuesta (no funciona), tengo 15 cajas de texto como podría hacer para q funcione en todas??? Aquí les mando el código que me fue proporcionado:

Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
'Valida que sean números en un textbox
'Por.Dam
If Not IsNumeric(TextBox3.Value) Then
If TextBox3 <> "" Then
MsgBox "Error el valor no es un número"
Cancel = True
TextBox3 = ""
Exit Sub
End If
End If
If TextBox3.Value < 0 Then
MsgBox "No se permite el signo -"
Cancel = True
TextBox3 = ""
Exit Sub
End If
If InStr(1, TextBox3.Value, "+") Then
MsgBox "No se permite el signo +"
Cancel = True
TextBox3 = ""
Exit Sub
End If
If InStr(1, TextBox3.Value, "$") Then
MsgBox "No se permite el signo $"
Cancel = True
TextBox3 = ""
Exit Sub
End If
If InStr(1, TextBox3.Value, "&") Then
MsgBox "No se permite el signo &"
Cancel = True
TextBox3 = ""
Exit Sub
End If
End Sub

p/d: ya intente con copiar y pegar y no resulto, también cambiando la variable cancel, pero tampoco resulto!!!

1 respuesta

Respuesta
1

Es que tendrías que crear un evento Exit para cada uno de los controles, cambiando todas las apariciones de "TextBox3" en el código por "TextBox4", "TextBox5", etc.

Una posible solución sería utilizar un módulo de clase para controlar, por ejemplo, el evento KeyPress de todos los controles. Es un poco complicado pero requiere tan sólo unas pocas líneas de código. He subido un ejemplo con un formulario con 4 textboxes: http://www.jrgc.es/ejemplos/ejemplo_20130227a.xls

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas