quiero que cuando se introduzca algo que no sea un numero en un textbox.me mande un mensage de error.y no se si esto sirve,ya que me salta hasta con numeros.
Yo en mi caso, lo que hice fue diseñar una función que impidiera que el usuario coloque caracteres no numéricos en la caja de texto. Aunque antes de procesar los datos tambien verificaba si el dato ingresado era un numero válido y si estaba dentro del rango correcto, esta función daba un efecto mucho más profesional al programa. La función es la siguiente:
Public Function IngresarSoloNumeros(ByVal KeyAscii As Integer, ByVal Caracteres_adicionales As String) As Integer
'Esta función permite que solo sean ingresados en la caja de texto los numeros y los caracteres adicionales que se deseen.
If InStr("0123456789" & Caracteres_adicionales, Chr(KeyAscii)) = 0 Then
IngresarSoloNumeros = 0
Else
IngresarSoloNumeros = KeyAscii
End If
'Teclas especiales permitidas.
If KeyAscii = 8 Then IngresarSoloNumeros = KeyAscii 'Retroceso.
If KeyAscii = 13 Then IngresarSoloNumeros = KeyAscii 'Enter.
End FunctionLuego para cada caja de texto que desees colocas el código siguiente. Supongamos que tenes una caja de texto llamada Txt_Numero y quieres que solo se puedan ingresar numeros enteros positivos. Entonces colocas en el formulario donde tenes la caja de texto:
Private Sub Txt_Numero_KeyPress(KeyAscii As Integer)
KeyAscii = IngresarSoloNumeros(KeyAscii, "")
End SubInclusive a esta función puedes indicarle de antemano si podes colocar numeros solo positivos, o positivos y negativos, enteros o decimales, si podes ingresar numeros hexadecimales, entre otras, ya que permite pasar como parámetros los caracteres adicionales además de los numeros del 0 al 9 que podremos ingresar.
Por ejemplo, si tambien tenemos una caja de texto llamada Txt_Decimal y queremos que puedan ingresarse cualquier numero real, sea decimal o no, positivo o negativo, entonces colocamos:
Private Sub Txt_Decimal_KeyPress(KeyAscii As Integer)
KeyAscii = IngresarSoloNumeros(KeyAscii, "+-.")
End SubBueno, espero que sea de utilidad. Nos estamos leyendo.