DetenerMacro (acción de macro)
Se aplica a: Access 2013, Office 2013
Puede usar la acción StopMacro para detener la macro que se está ejecutando actualmente.
Configuración
La acción StopMacro no tiene argumentos.
Comentarios
Normalmente, esta acción se usa cuando una condición hace que sea necesario detener la macro. Puede usar una expresión condicional en la fila de acción de la macro que contiene esta acción. Cuando la expresión se evalúa como True (–1), Microsoft Access detiene la macro.
Por ejemplo, puede crear una macro que abra un formulario que muestre los totales de pedidos diarios de la fecha especificada en un cuadro de diálogo personalizado. Puede usar una expresión condicional para asegurarse de que el control Fecha de pedido del cuadro de diálogo contiene una fecha válida. Si no es así, la acción Cuadro de mensajes puede mostrar un mensaje de error y la acción DetenerMacro puede detener la macro.
Si la macro ha usado las acciones Eco o SetWarnings para desactivar el eco o la visualización de mensajes del sistema, la acción DetenerMacro los vuelve a activar automáticamente.
Esta acción no está disponible en un módulo de Visual Basic para Aplicaciones (VBA).
Ejemplo
En la siguiente macro se muestra el uso de la acción AlOcurrirError. En este ejemplo, la acción AlOcurrirError especifica que Access ejecute una macro de tratamiento de errores personalizada denominada ErrorHandler cuando se produzca un error. Cuando se produce un error, se llama al submacro CatchErrors. Si el número de error es 2102, se muestra un mensaje específico y se detiene la ejecución de macros. De lo contrario, se muestra un mensaje que describe el error y la macro está en pausa para que pueda solucionar problemas adicionales. Esta macro mostrará un cuadro de mensaje referente al objeto ErrorDeMacro para mostrar información sobre el error.
Código de ejemplo proporcionado por la Referencia del programador de Microsoft Access 2010.
/* MACRO: mcrThrowErrors */
/* PURPOSE: Error handling using macros in Access 2010 */
OnError
Go to Macro Name
Macro Name CatchErrors
OpenForm
Form Name frmSamples
View Form
Filter Name
Where Condition
Data Mode
Window Mode Normal
MessageBox
Message This message appears after the OpenForm action
Beep Yes
Type None
Title
/* SUBMACRO: CatchErrors */
SubMacro: CatchErrors
If [MacroError].[Number]=2101 Then
MessageBox
Message Cannot find the specified form!
Beep Yes
Type Critical
Title
StopMacro
Else
MessageBox
Message =[MacroErro].[Description]
Beep Yes
Type None
Title Unhandled Error
SingleStep
End If
End SubMacro