Puede usar la acción de macro OnError en Access para especificar lo que debe ocurrir cuando se produce un error en una macro.
Nota: La acción de macro OnError no está disponible en las aplicaciones web de Access.
Configuración
La acción de macro OnError tiene los siguientes argumentos:
Argumento de la acción |
Descripción |
||||||||
Ir a |
Especifique el comportamiento general que se debe producir cuando se encuentra un error. Haga clic en la flecha desplegable y, a continuación, haga clic en una de las opciones siguientes:
|
||||||||
Nombre de la macro |
Si el argumento Ir a se establece en Nombre de la macro, escriba el nombre de la submacro que se usará para el control de errores. El nombre que escriba debe coincidir con un nombre de submacro en la macro actual; no puede escribir el nombre de un objeto de macro diferente. En el ejemplo siguiente, la sub macro ErrorHandler se encuentra en el mismo objeto de macro que la acción de macro OnError . Este argumento debe dejarse en blanco si el argumento Ir a se establece en Siguiente o Incorrecto. |
Comentarios
-
La acción de macro OnError suele colocarse al principio de una macro, pero también puede colocar la acción más adelante en la macro. Las reglas establecidas por la acción tendrán efecto siempre que se ejecute la acción.
-
Si establece el argumento Ir enError, Access se comportará del mismo modo si no hubiera ninguna acción OnError en la macro. Es decir, si se encuentra un error, Access detiene la macro y muestra un mensaje de error estándar. El uso principal de la opción De error es desactivar cualquier control de errores que haya establecido anteriormente en una macro.
Ejemplo
En la macro siguiente se muestra el uso de la acción de macro OnError . En este ejemplo, la acción OnError especifica que Access ejecute una submacro personalizada de control de errores denominada ErrorHandler cuando se produce un error. Si se produce un error en cualquiera de las acciones siguientes, Access salta a la submacro ErrorHandler. La submacro ErrorHandler muestra un cuadro de mensaje que hace referencia al objeto MacroError para proporcionar información sobre el error.
Nombre de la submacro |
Acción |
Argumentos |
Onerror |
Ir a: Nombre de la macro Nombre de la macro: ErrorHandler |
|
[Acción 2] |
||
... |
||
[Acción n] |
||
ErrorHandler |
Messagebox |
Mensaje: ="Error # " & [MacroError]. [Número] & " en " & [MacroError]. [NombreDe ActionName] & "acción". Pitido: Sí Tipo: Ninguno Título: Error producido |
A continuación, se incluye una captura de pantalla del Diseñador de macros de Access (Access 2010 y versiones posteriores) con el ejemplo anterior. En este caso, la expresión en la acción SetLocalVar desencadena un error porque se intenta dividir un número por cero. Access se desplaza hacia abajo hasta la submacro denominada ErrorHandler y muestra la información relativa al error en un cuadro de mensaje.