Error en tiempo de ejecución
Publicado por Antonio Reyes (4 intervenciones) el 17/12/2009 14:13:06
Hola, gracias anticipadas por la ayuda.
No soy programador, ni experto en el desarrollo de macros para aplicaciones, pero he hecho muchos de ellos para cosas más o menos fáciles que me salen bien (con la ayuda principalmente de JuanC que me ha dado muchísimos y acertados consejos), aunque ahora tengo un problema.
El último desarrollo que hice es para obtener un reporte de evaluación de acuerdo a ciertas combinaciones de datos. El reporte se imprime o se guarda muy bien si no hay errores en la captura de los datos que combino (el nombre del puesto y el nivel, por ejemplo) o si el cursor está en la celda que debe estar (la columna de títulos de puestos), pero si se comete un error aparece el cuadro de diálogo de "Se ha producido un error" y hay que finalizar, cosa que hace que las hojas que tengo ocultas y con contraseñas se queden abiertas y desprotegidas.
En un libro encontré la sentencia "On Error GoTo ControladorError" y la puse al inicio del macro y despues, antes del End Sub, introduje:
ControladorError:
Application.DisplayAlerts = False
ActiveWorkbook.Close
Esto resultó muy bien porque si hay un error cierra el archivo y nadie ve nada y tienen que volver a iniciar y seguramente lo harán mejor, pero el problema radica en que cuando no hay error, al ejecutar el macro y llegar, en la ejecución al controlador de error también se cierra el libro y eso no debe suceder, ya que debe quedar abierto para obtener el reporte del siguiente puesto.
¿Hay alguna forma de evitar que aparezca el cuadro de error, que avise o se cierre, pero que cuando no haya error esas sentencias no sean ejecutadas?
Gracias otra vez
Antonio
No soy programador, ni experto en el desarrollo de macros para aplicaciones, pero he hecho muchos de ellos para cosas más o menos fáciles que me salen bien (con la ayuda principalmente de JuanC que me ha dado muchísimos y acertados consejos), aunque ahora tengo un problema.
El último desarrollo que hice es para obtener un reporte de evaluación de acuerdo a ciertas combinaciones de datos. El reporte se imprime o se guarda muy bien si no hay errores en la captura de los datos que combino (el nombre del puesto y el nivel, por ejemplo) o si el cursor está en la celda que debe estar (la columna de títulos de puestos), pero si se comete un error aparece el cuadro de diálogo de "Se ha producido un error" y hay que finalizar, cosa que hace que las hojas que tengo ocultas y con contraseñas se queden abiertas y desprotegidas.
En un libro encontré la sentencia "On Error GoTo ControladorError" y la puse al inicio del macro y despues, antes del End Sub, introduje:
ControladorError:
Application.DisplayAlerts = False
ActiveWorkbook.Close
Esto resultó muy bien porque si hay un error cierra el archivo y nadie ve nada y tienen que volver a iniciar y seguramente lo harán mejor, pero el problema radica en que cuando no hay error, al ejecutar el macro y llegar, en la ejecución al controlador de error también se cierra el libro y eso no debe suceder, ya que debe quedar abierto para obtener el reporte del siguiente puesto.
¿Hay alguna forma de evitar que aparezca el cuadro de error, que avise o se cierre, pero que cuando no haya error esas sentencias no sean ejecutadas?
Gracias otra vez
Antonio
Valora esta pregunta


0