Práctica 2:
Sistema de Gestión
de Bases de Datos
Parte IV: Macros en Access
Ofimática 2003/2004
Dpto. Lenguajes y Sistemas Informáticos
1. Qué es y por qué utilizamos una macro.
Una macro realiza automáticamente una tarea o serie de tareas. Cada tarea se denomina acción. Access ofrece una lista de acciones entre las que se selecciona una o más para realizar una macro. Las macrosnos van a permitir entre otras muchas cosas:
• Hacer que los formularios funcionen conjuntamente. Por ejemplo, se puede añadir un botón de comando a un formulario para que aparezca otro formulario mostrando datos relacionados con los datos que había en el primero.
• Buscar y filtrar registros automáticamente. Las macros pueden acelerar el proceso de búsqueda de los registros.
• Establecervalores en controles. Se puede asignar a un control el valor procedente de un cálculo o un valor procedente de otra tabla.
• Asegurar la exactitud de los datos. Se pueden realizar validaciones más complejas que las que podíamos hacer usando la propiedad Regla de validación de los campos y controles en el diseño de tablas y formularios.
• Establecer propiedades de formularios, informes ycontroles. Se pueden utilizar las macros para ocultar un formulario cuando no necesitemos verlo en pantalla, pero sigamos necesitando utilizar los datos incluidos en él.
• Automatizar transferencias de datos. Permiten exportar o importar automáticamente los datos entre distintos formatos de archivo. Por ejemplo, podemos exportar al final de cada semana los datos de recibos pendientes a una hoja decálculo de Microsoft Excel.
• Crear un entorno de trabajo personalizado. Se pueden utilizar macros para abrir automáticamente un grupo de consultas, formularios e informes cuando abramos la base de datos. Además, podemos personalizar las barras de menús de los formularios.
2. Crear una macro.
En la Ventana de la Base de Datos seleccionamos Macros y pulsamos el botón Nuevo, apareciendo laventana Macro. La parte superior de la ventana Macro se utiliza para agregar acciones. La parte inferior se utiliza para especificar los argumentos de la acción.
Podemos usar dos métodos para agregar acciones a una macro:
• Seleccionar en la lista de acciones la acción que queremos que realice la macro.
• Arrastrar el objeto deseado desde la ventana de la BD hasta la celda de la acción. Eneste caso la macro realiza las acciones habituales asociadas con objetos de la BD: si se trata de una tabla, consulta, formulario o informe, Access agregará automáticamente una acción para abrirla; si se arrastra una macro, Access agregará automáticamente una acción para ejecutar dicha macro.
Establecer argumentos.
La mayoría de las acciones tienen argumentos que proporcionan a Accessinformación adicional sobre cómo realizar la acción. Por ejemplo la acción AbrirFormulario tiene un argumento Nombre del formulario para especificar qué formulario se desea abrir.
Si se agrega una acción a una macro arrastrando un objeto desde la ventana de la base de datos, Access establecerá automáticamente los argumentos correspondientes a dicha acción.
Crear un grupo de macros
Un grupo demacros es una serie de una o más macros que aparecen en la misma ventana Macro aunque cada una de ellas se ejecuta de manera independiente a las demás. Los grupos de macros nos pueden servir cuando tenemos macros que hacen acciones semejantes o acciones relacionadas con un mismo objeto y no queremos que aparezcan tantos nombres en la sección macro de la ventana de la BD. Por ejemplo, en un formulariocon varios botones de comando, en lugar de crear una macro separada por cada botón, se puede crear un grupo de macros con una macro por cada botón.
Un grupo de macros es un objeto de la base de datos. Cada macro del grupo es identificada por el nombre del grupo más el nombre de la macro. Para ejecutar una macro de un grupo de macros, escribimos el nombre del grupo, un punto, y por último, el…