Ver Mensaje Individual
  #3 (permalink)  
Antiguo 14/05/2011, 17:03
t0n1
 
Fecha de Ingreso: noviembre-2010
Mensajes: 175
Antigüedad: 14 años
Puntos: 1
Respuesta: Limpiar Textbox evento change

Cita:
Iniciado por pkj Ver Mensaje
El error lo muestra porque intenta multiplicar el caracter espacio que no es un numero.
Lo primero que tienes que hacer es que cuando uses el valor de un textbox te asegures antes de que contienen numeros.
El fallo mas gordo lo tienes cuando permites que la sub se llame a si misma.
Si no puedes evitar que la sub se llame, como es tu caso, lo que tienes que hacer es poner un flag o aviso que impida que se procese el código de la sub cuando es ella la que se llama a si misma o simplemente cuando la sub se esta ejecutando.
Para eso puedes usar una variable estática.

Código vb:
Ver original
  1. Private Sub Text1_Change()
  2.  
  3.   Static EnUso As Boolean
  4.   If EnUso=True Then Exit Sub
  5.   EnUso=True
  6. ...
  7. ...
  8. el codigo de la sub
  9. ...
  10. ...
  11.   EnUso=False
  12.  
  13. End Sub
De todas formas dentro de la sub cuando uses el textbox convierte el texto al formato numérico:
Resultado=1500 * Val(Text1)
Si el texto no contiene numeros el valor devuelto es 0, que no genera errores.

El código funciona pero se mantiene el dato en el textbox y no se limpia para un alta de registro siguiente.

No entiendo lo de convertir el texto a formato numérico si en el textbox que uso estoy colocando números para la cuenta no letras.

Saludos!!!