Error al guardar no limpia textbox

Tengo un problema con mi formulario VBA de excel... Con todo lo que eh aprendido aquí pude amoldar los comando para que ejecute todo lo que necesito.

Pues bien, cuando presiono el botón guardar, me guarda toda la información a mi hoja excel y me limpia los combobox y textbox de mi form, pero no lo hace dentro del Frame en otros textbox, me envía este error

al depurar me envía aquí

Que hago con esto, es que al buscar un dato me realice esta formula cuando le ingreso un dato, pero al guardar no me limpia.

Este es mi form; hago la búsqueda del producto trayecto información

y esto hace al ingresar la cantidad;

Me resta un porcentaje, dejando el valor neto. Esto lo hago en 20 ítem y cada vez que elijo un producto se suma automáticamente.

Ruego me puedan ayudar...

2 respuestas

Respuesta
1

[Hola

En la macro que guarda seguramente tienes alguna línea que borra y/o deja en blanco a Txt_cantidad1, al hacer eso activas su evento "Change" y como posiblemente has hecho lo mismo con Txt_Venta1, ocasiona un error en la operación en donde te marca el error.

¿Cómo solucionarlo? Excel tiene una propiedad que anula/desactiva los eventos: Application. EnableEvents pero el gran problema es que no actúa a nivel de "UserForm" y los objetos que contenga, entonces hay que simular algo parecido.

Crea una variable pública del tipo "Boolean" y colócala en "True" desde que inicia tu "UserForm":

Public EnableEvents As Boolean
Private Sub UserForm_Initialize()
 Me.EnableEvents = True

Luego, en el evento "Change" de "Txt_cantidad1" al inicio colocamos la variable en "False":

Private Sub Txt_cantidad1_Change()
If EnableEvents = False Then Exit Sub

Y por último en tu código en donde limpias dicho textbox, coloca algo así:

Me.EnableEvents = False
Txt_cantidad1 = ""
Me.EnableEvents = True

¡Gracias! ... genial... me resulto muy bien, voy a replicarlo en mis otros textbox a ver como me va...

Muchas gracias y disculpa la demora en responder...

Respuesta
1

No coinciden los tipos normalmente sale cuando intentas multiplicar un numero por texto prueba poniendo cdec(mi textbox) * xxxxx

Mira estos ejemplos relacionados con tu proyecto

https://macrosenexcel.com/como-crear-una-factura-o-sale-invoice-y_3/

https://macrosenexcel.com/como-crear-una-factura-o-sale-invoice-y_8/ 

¡Gracias! por los ejemplos, lo pondré en practica y si tengo alguna otra duda lo molestare...

Muchas gracias... por su tiempo...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas