Hola a todos:
Tengo un libro donde se hace ingreso intensivo de datos, en una columna
del mismo se ingresa un código. Lo que he hecho es utilizar el evento
Workbook_SheetChange para:
A. Identificar la hoja donde el usuario escribió:
If Sh.Codename="EstaHojaMeInteresa" Then ...
B. Identificar la celda:
If Not Intersect(Range("EstaCeldaMeInteresa"), Target) Is Nothing
Then...
C. Tomar el valor ingresado: MiVariable=Target.Value...
D. Transformar ese valor en otra cadena sin hacer uso de ningún objeto
de Excel.
E. Devolver el valor a la celda: Target.Value=MiVariableTransformada...
Aparte de esto solo tengo un OnKey que cambia el enter del teclado
númerico por Tab.
Mi Problema:
Cada vez que el usuario ingresa un código la Num Lock del teclado
parpadea, y como el usuario ya está ingresando un número en la
siguiente celda, si escribe rápido ingresa por ejemplo AvPag en vez de
"3", lo que hace que termine cargando datos en cualquier parte.
Lo que observé, es que Excel calcula las fórmulas relacionadas
"antes" de lanzar el evento Woorkbook_SheetChange y, luego de que
cambia el valor por código, vuelve a calcular, lo que demora bastante.
Lamentablemente parece que no hay un evento Workbook_SheetBeforeChange
o algo parecido que me permita recibir el ingreso del usuario antes que
la hoja.
Cualquier ayuda realmente se agradece.
Saludos
Leer las respuestas