Contenido

# Macros del documento controladas por eventos

Esta sección describe el procedimiento para asignar secuencias de órdenes a eventos de la aplicación, del documento o de un formulario.

Puede ejecutar automáticamente una macro cuando ocurre un evento de software específico asignando la macro deseada al evento. La siguiente tabla proporciona una descripción general de los eventos del documento y en qué punto se ejecuta una macro asignada.

Evento | Una macro asignada se ejecuta… | rutina
--- | --- | ---
Iniciar aplicación | ... después de iniciar alguna aplicación de LibreOffice. | OnStartApp
Cerrar aplicación | … antes de que termine una aplicación de LibreOffice. | OnCloseApp
Documento creado | … documento nuevo creado mediante Archivo ▸ Nuevo o con el icono Nuevo. Tenga en cuenta que este evento también se desencadena cuando se abre el EDI de BASIC. | OnCreate
Documento nuevo | … después de crear un documento nuevo con Archivo ▸ Nuevo o con el icono Nuevo. | OnNew
Carga del documento finalizada | ...antes de abrir un documento con Archivo - Abrir o con el icono Abrir. | OnLoadFinished
Abrir documento | … después de abrir un documento con Archivo ▸ Abrir o con el icono Abrir. | OnLoad
El documento se va a cerrar. | … antes de cerrar un documento. | OnPrepareUnload
Documento cerrado | … después de cerrar un documento. Tenga en cuenta que el evento «Guardar documento» también puede activarse si el documento se guarda antes de cerrarlo. | OnUnload
- sin interfaz de usuario - |  | OnLayoutFinished
Vista creada | Se muestra el documento. Observe que este evento también ocurre cuando se duplica un documento. | OnViewCreated
La vista se cerrará | Se está eliminando el diseño del documento. | OnPrepareViewClosing
Vista cerrada | El diseño del documento se borra antes de cerrarlo. | OnViewClosed
Activar documento | … después de que un documento se traiga al primer plano. | OnFocus
Desactivar documento | … después de que otro documento se traiga al primer plano. | OnUnfocus
Guardar documento | … antes de guardar un documento con Archivo ▸ Guardar o el icono Guardar, siempre que se haya especificado antes un nombre para el documento. | OnSaveAs
El documento se guardó | … después de guardar un documento con Archivo ▸ Guardar o el icono Guardar, siempre que se haya especificado antes un nombre para el documento. | OnSaveDone
Error al guardar el documento | No se ha podido guardar el documento. | OnSaveFailed
Guardar documento como | … antes de guardar un documento con un nombre específico (con Archivo ▸ Guardar como, Archivo ▸ Guardar o el icono Guardar, si no se ha especificado todavía un nombre de documento). | OnSaveAs
El documento se guardó como | … después de guardar un documento con un nombre específico (con Archivo ▸ Guardar como, Archivo ▸ Guardar o el icono Guardar, si no se ha especificado todavía un nombre de documento). | OnSaveAsDone
'Guardar como' ha fallado | No se pudo guardar el documento. | OnSaveAsFailed
- sin interfaz de usuario - | Cuando la ubicación del documento en disco ha cambiado, por ejemplo, después de una acción Archivo ▸ Guardar como. | OnStorageChanged
Al almacenar o exportar una copia del documento | ...antes de guardar un documento con Archivo - Guardar una copia, Archivo - Exportar, Archivo - Exportar como PDF o los íconos Guardar. | OnCopyTo
Se ha creado una copia del documento. | ...después de guardar un documento con Archivo - Guardar una copia, Archivo - Exportar, Archivo - Exportar como PDF o los íconos Guardar. | OnCopyToDone
Error al crear la copia del documento | No se ha podido copiar ni exportar el documento. | OnCopyToFailed
Imprimir documento | ...después de cerrar el diálogo Imprimir, pero antes de que comience el proceso de impresión real. Este evento ocurre para cada copia impresa. | OnPrint
- sin interfaz de usuario - | ...después de que la configuración de seguridad del documento haya cambiado. | OnModeChanged
Se cambió el estado de "Modificado" | El estado modificado de un documento ha cambiado. | OnModifyChanged
Título del documento cambiado | Cuando se actualiza el título del documento. | OnTitleChanged
Subcomponente cargado | ...después de abrir un formulario de base de datos. | OnSubComponentOpened
Subcomponente cerrado | ...después de cerrar un formulario de base de datos. | OnSubComponentClosed
Se inició la impresión de cartas modelo | ...antes de imprimir cartas modelo usando los menús Archivo - Imprimir o Herramientas - Asistente para combinar correspondencia. | OnMailMerge
Impresión de cartas modelo terminada | ...después de imprimir cartas modelo usando Archivo - Imprimir o Herramientas - Asistente para combinar correspondencia. | OnMailMergeFinished
Se inició la impresión de los campos del formulario. | ...antes de imprimir los campos del formulario. | OnFieldMerge
Impresión de campos de formulario finalizada | ...después de imprimir los campos del formulario. | OnFieldMergeFinished
Cambio del recuento de páginas | Cuando cambia el recuento de páginas. | OnPageCountChanged

La mayoría de los eventos se relacionan con documentos, excepto OnStartApp, OnCloseApp, OnCreate y OnLoadFinished que ocurren a nivel de aplicación. Los eventos OnSubComponentOpened y OnSubComponentClosed son activados por los formularios de la base de datos.

Los documentos de Writer activan esos eventos específicos: OnLayoutFinished, OnMailMerge, OnMailMergeFinished, OnFieldMerge, OnFieldMergeFinished y OnPageCountChanged.

## Asignación de una macro a un evento

1. Vaya a Herramientas ▸ Personalizar y pulse en la pestaña Eventos.

2. Seleccione si desea que la asignación sea válida globalmente o solo en el documento actual seleccionando la opción correspondiente en el cuadro Guardar en.

3. Seleccione la acción de la lista Evento.

4. Pulse en Macros y seleccione la macro que se asignará al evento elegido.

5. Pulse en Aceptar para asignar la macro.

6. Pulse en Aceptar para cerrar el diálogo.

## Supresión de la asignación de una macro a un evento

1. Vaya a Herramientas ▸ Personalizar y pulse en la pestaña Eventos.

2. Elija si quiere quitar una asignación global o una que solo es válida en el documento actual seleccionando la opción correspondiente en el cuadro de lista Guardar en.

3. Seleccione el evento que contiene la asignación que desee suprimir de la lista de Eventos.

4. Pulse en Quitar.

5. Pulse en Aceptar para cerrar el diálogo.

Temas relacionados

Además de asignar macros a eventos, se pueden monitorizar eventos desencadenados en documentos de LibreOffice.

¡Necesitamos su ayuda!