Crear una macro

Puede crear una macro (macro: acción o conjunto de acciones utilizados para automatizar tareas.) para realizar un conjunto específico de acciones (acción: componente básico de una macro; instrucción independiente que se puede combinar con otras acciones para automatizar tareas. A veces se denomina comando en otros lenguajes de macros.), y puede crear un grupo de macros (grupo de macros: colección de macros relacionadas que se almacenan juntas bajo un único nombre de macro. A menudo, se hace referencia a la colección simplemente como una macro.) para realizar conjuntos de acciones relacionadas.

En Microsoft Office Access 2007, las macros pueden estar incluidas en objetos de macro (que a veces reciben el nombre de macros independientes) o incrustadas en las propiedades de evento de formularios, informes o controles. Las macros incrustadas forman parte del objeto o control en el que están incrustadas. Los objetos de macro se pueden ver en el panel de exploración, bajo Macros, pero no ocurre lo mismo con las macros incrustadas.

¿Qué desea hacer?


Obtener información sobre el Generador de macros

El Generador de macros sirve para crear y modificar macros. Para abrir el Generador de macros:

  • En el grupo Otros de la ficha Crear, haga clic en Macro. Si el comando no está disponible, haga clic en la flecha situada debajo del botón Módulo o Módulo de clase y, a continuación, haga clic en Macro.Imagen del botón

Se muestra el Generador de macros.

Generador de macros

En la ventana del Generador de macros, se crea la lista de acciones que se desea realizar al ejecutar la macro. Al abrir por primera vez el Generador de macros, se muestran las columnas Acción, Argumentos y Comentario.

En Argumentos de acción, se especifican y modifican los argumentos en la parte izquierda de cada acción de macro, si es necesario. En la parte derecha se muestra un cuadro de descripción que contiene una breve descripción de cada acción o argumento. Haga clic en una acción o argumento de acción para leer la descripción del cuadro.

Puede utilizar los comandos de la ficha Diseño del Generador de macros para crear, probar y ejecutar una macro.

En la tabla siguiente se describen los comandos disponibles en la ficha Diseño.

Grupo Comando Descripción
Herramientas Ejecutar Realiza las acciones incluidas en la macro.
Paso a paso Habilita el modo de paso a paso. Cuando se ejecuta la macro en este modo, las acciones se realizan de una en una. Cada vez que finaliza una acción, se muestra el cuadro de diálogo Macro paso a paso. Haga clic en Paso a paso en el cuadro de diálogo para pasar a la siguiente acción. Haga clic en Detener todas las macros para detener ésta y todas las demás macros en ejecución. Haga clic en Continuar para salir del modo paso a paso y realizar las acciones restantes sin interrupciones.
Generador Este botón se habilita cuando se especifica un argumento de acción que puede contener una expresión (expresión: cualquier combinación de operadores matemáticos o lógicos, constantes, funciones y nombres de campos, controles y propiedades que evalúa a un solo valor. Las expresiones pueden realizar cálculos, manipular caracteres o probar datos.). Haga clic en Generador para abrir el cuadro de diálogo Generador de expresiones, que puede utilizar para crear la expresión.
Filas Insertar filas Inserta una o varias filas de acción en blanco sobre la fila o filas seleccionadas.
Eliminar filas Elimina la fila o filas de acción seleccionadas.
Mostrar u ocultar Mostrar todas las acciones

Muestra más o menos acciones en la lista desplegable Acción.

  • Para mostrar una lista más larga de acciones de macro, haga clic en Mostrar todas las acciones. Cuando haya una lista más larga disponible, el botón Mostrar todas las acciones aparece seleccionado. Si selecciona una acción de macro de esta lista más larga de acciones de macro, es posible que tenga que conceder a la base de datos un estado de confianza explícita para poder ejecutar la acción.
  • Para cambiar de una lista larga de acciones de macro a una lista corta que contenga únicamente las acciones de macro que puede utilizar en una base de datos sin el estado de confianza asignado, asegúrese de que el botón Mostrar todas las acciones no está seleccionado.

 Sugerencia   Si el botón Mostrar todas las acciones está seleccionado, haga clic en él para borrar la selección. Cuando el botón Mostrar todas las acciones no está seleccionado, se muestra la lista corta de acciones de macro de confianza.

Nombres de macro Muestra u oculta la columna Nombre de macro. Los nombres de macro son necesarios en los grupos de macros para distinguir las macros unas de otras, pero son opcionales en los demás casos. Para obtener más información, vea la sección Crear un grupo de macros.
Condiciones Muestra u oculta la columna Condición. Esta columna sirve para especificar expresiones que controlen cuándo se realiza una acción.
Argumentos Muestra u oculta la columna Argumentos. Esta columna contiene los argumentos de cada acción de macro y permite leer la macro más fácilmente. Si no aparece la columna Argumentos, tendrá que hacer clic en cada acción y leer los argumentos en Argumentos de acción. No puede especificar argumentos en la columna Argumentos.

Volver al principio Volver al principio

Crear una macro independiente

  1. En el grupo Otros de la ficha Crear, haga clic en Macro. Si el comando no está disponible, haga clic en la flecha situada debajo del botón Módulo o Módulo de clase y, a continuación, haga clic en Macro.Imagen del botón

Se muestra el Generador de macros.

  1. Agregue una acción a la macro:
    • En el Generador de macros, haga clic en la primera celda vacía de la columna Acción.
    • Escriba la acción que desea utilizar o haga clic en la flecha para mostrar la lista de acciones disponibles y, a continuación, seleccione la acción que desee.

Seleccionar una acción de macro

  • En Argumentos de acción (en la parte inferior del Generador de macros), especifique argumentos para la acción, si es necesario.

Especificar argumentos de acción

 Notas 

  • Al escribir los argumentos en el panel Argumentos de acción, aparecen en la columna Argumentos en la lista de acciones. No obstante, la columna Argumentos es sólo para visualización; no puede especificar argumentos en esa columna.
  • Para ver una breve descripción de cada argumento, haga clic en el panel Argumentos de acción, en el cuadro del argumento y, a continuación, lea la descripción en el cuadro adyacente.

MostrarSugerencias


  • Escriba, si lo desea, un comentario para la acción en la columna Comentario.
  1. Para agregar más acciones a la macro, muévase a otra fila de acción y repita el paso 2.

Cuando ejecuta la macro, Access lleva a cabo las acciones en el orden en que se incluyen.

Volver al principio Volver al principio

Crear un grupo de macros

Si desea agrupar varias macros relacionadas en un objeto de macro, puede crear un grupo de macros.

  1. En el grupo Otros de la ficha Crear, haga clic en Macro. Si el comando no está disponible, haga clic en la flecha situada debajo del botón Módulo o Módulo de clase y, a continuación, haga clic en Macro.Imagen del botón

Se muestra el Generador de macros.

  1. En la ficha Diseño, en el grupo Mostrar u ocultar, haga clic en Nombres de macroImagen del botón, si la opción aún no está seleccionada.

Se muestra la columna Nombre de macro en el Generador de macros.

 Nota   En los grupos de macros, los nombres de macro son necesarios para distinguir las macros unas de otras. Estos nombres aparecen en la misma. línea que la primera acción de la macro. La columna de nombre de macro aparece en blanco para las siguientes acciones de la macro. La macro termina cuando se encuentra el siguiente nombre de macro.

  1. En la columna Nombre de macro, especifique un nombre para la primera macro del grupo de macros.
  2. Agregue las acciones que desea que realice la primera macro:
    • En la columna Acción, haga clic en la flecha para mostrar la lista de acciones.
    • Haga clic en la acción que desee utilizar.
    • En Argumentos de acción, especifique argumentos para la acción, si es necesario.

Para ver una breve descripción de cada argumento, haga clic en el cuadro del argumento y, a continuación, lea la descripción en la parte derecha del argumento.

MostrarSugerencias

  • Para un argumento de acción cuya configuración sea un nombre de objeto de base de datos, puede establecer el argumento arrastrando el objeto desde el panel de exploración hasta el cuadro del argumento Nombre del objeto de la acción.
  • También puede crear una acción arrastrando un objeto de base de datos desde el panel de exploración a una fila vacía en el Generador de macros. Si arrastra una tabla, consulta, formulario, informe o módulo al Generador de macros, Access agrega una acción que abre la tabla, consulta, formulario o informe. Si arrastra una macro al Generador de macros, Access agrega una acción que ejecuta la macro.

  • Escriba, si lo desea, un comentario para la acción.
  1. Desplácese a la siguiente fila vacía y escriba un nombre para la siguiente macro en la columna Nombre de macro.
  2. Agregue las acciones que desea que realice la macro.
  3. Repita los pasos 5 y 6 para cada macro del grupo de macros.

La siguiente ilustración muestra un pequeño grupo de macros. El grupo de macros contiene dos macros, cuyos nombres aparecen en la columna Nombre de macro. Cada macro contiene dos acciones.

Ejemplo de grupo de macros

 Notas 

  • Cuando guarde el grupo de macros, el nombre que especifique será el nombre del grupo. En el ejemplo anterior, el nombre del grupo de macros es Macro3. Este nombre aparece en Macros en el panel de exploración. Para hacer referencia a una macro individual incluida en un grupo de macros, use esta sintaxis:

nombre_de_grupo_de_macros.nombre_de_macro

Por ejemplo, en la ilustración anterior, Macro3.FoundMsg hacer referencia a la segunda macro del grupo de macros.

  • Si ejecuta un grupo de macros haciendo doble clic en él en el panel de exploración o haciendo clic en EjecutarImagen del botón en el grupo Herramientas en la ficha Diseño, Access ejecuta sólo la primera macro del grupo y se detiene cuando llega al segundo nombre de macro.

Volver al principio Volver al principio

Crear una macro incrustada

Las macros incrustadas se diferencian de las macros independientes en que se almacenan en las propiedades de evento de los formularios, informes o controles. No se muestran como objetos bajo Macros en el panel de exploración. Estas macros permiten administrar la base de datos más fácilmente, ya que no es necesario realizar un seguimiento de los distintos objetos de macro que contienen macros para un formulario o informe. Asimismo, las macros incrustadas se incluyen con el formulario o informe siempre que lo copie, importe o exporte.

Por ejemplo, si desea impedir que se muestre un informe cuando no contenga datos, puede incrustar una macro en la propiedad del evento Al no haber datos del informe. Puede utilizar la acción CuadroMsj para mostrar un mensaje y, a continuación, utilizar la acción CancelarEvento para cancelar el informe en lugar de mostrar una página en blanco.

  1. En el panel de exploración, haga clic con botón secundario en el formulario o informe que va a incluir la macro y, a continuación, haga clic en Vista DiseñoImagen del botón o en Vista PresentaciónImagen del botón.
  2. Si no se muestra la hoja de propiedades, presione F4.
  3. Haga clic en el control o sección que contiene la propiedad de evento en la que desea incrustar la macro. Puede seleccionar también el control o sección (o todo el formulario o informe) mediante la lista desplegable en Tipo de selección en la parte superior de la hoja de propiedades.
  4. En la hoja de propiedades, haga clic en la ficha Eventos.
  5. Haga clic en la propiedad de evento en la que desea incrustar la macro y, a continuación, haga clic en Imagen del botón.
  6. En el cuadro de diálogo Elegir generador, haga clic en Generador de macros y después en Aceptar.
  7. En el Generador de macros, haga clic en la primera fila de la columna Acción.
  8. En la lista desplegable Acción, haga clic en la acción que desee.
  9. Especifique todos los argumentos necesarios en Argumentos de acción.
  10. Si desea agregar otra acción, haga clic en la fila siguiente de la columna Acción y repita los pasos 8 y 9.
  11. Una vez finalizada la macro, haga clic en Guardar y luego en Cerrar.

La macro se ejecuta cada vez que se desencadena la propiedad.

 Notas 

  • Access permite generar un grupo de macros como una macro incrustada. Sin embargo, sólo se ejecutará la primera macro del grupo cuando se desencadene el evento. Las macros siguientes no se tienen en cuenta.
  • Las macros incrustadas no se pueden convertir a Visual Basic for Applications (VBA) usando la herramienta Convertir macros a Visual BasicImagen del botón en el grupo Macro de la ficha Herramientas de base de datos. Si desea convertir en última instancia las macros a código VBA, puede resultar adecuado crear macros independientes en lugar de macros incrustadas. Entonces, podrá usar la herramienta Convertir macros a Visual Basic para convertirlas a VBA.

Volver al principio Volver al principio

Editar una macro

  • Para insertar una fila de acción     Haga clic con el botón secundario en la fila de acción sobre la que desea insertar la nueva fila de acción y, a continuación, haga clic en Insertar filasImagen del botón.
  • Para eliminar una fila de acción     Haga clic con el botón secundario en la fila de acción que desea eliminar y, a continuación, haga clic en Eliminar filasImagen del botón.
  • Para mover una fila de acción     Seleccione la fila de acción haciendo clic en la cabecera de fila situada a la izquierda de la acción y, a continuación, arrástrela a la nueva posición.

Puede insertar, eliminar o mover varias filas seleccionando primero el grupo de filas y ejecutando luego la operación que desea. Para seleccionar un grupo de filas, haga clic en el título de la fila para la primera fila que desea seleccionar, mantenga presionada la tecla MAYÚS y haga clic en el título de la fila para la última fila que desea seleccionar. (El título de la fila es el cuadro atenuado a la izquierda de cada fila de acción.)

Un método alternativo para seleccionar varias filas es colocar el puntero sobre el título de la fila de la primera fila que desea seleccionar, y luego haga clic y arrastre hacia arriba o hacia abajo para seleccionar las demás filas.

 Nota   Al seleccionar filas haciendo clic y arrastrando, la primera fila que seleccione no debe estar seleccionada. Si ya está seleccionada, Access supondrá que está intentando arrastrar la fila a una nueva ubicación.

Volver al principio Volver al principio

Usar condiciones para controlar las acciones de macro

Puede utilizar cualquier expresión que se evalúe como Verdadero/Falso o Sí/No en una condición (condición: parte del criterio que debe cumplir un campo cuando se realiza una búsqueda o se aplica un filtro. Algunas condiciones se deben utilizar con un valor; por ejemplo, el campo Autor con la condición igual a con el valor Juan.). La acción de macro se ejecutará si la condición se evalúa como Verdadero (o Sí).

Para especificar una condición para una acción de macro, primero debe mostrar la columna Condición en el Generador de macros:

  • En la ficha Diseño, en el grupo Mostrar u ocultar, haga clic en CondicionesImagen del botón.

Escriba una expresión en la columna Condición. No anteponga un signo de igualdad a la expresión (=). Para que una condición se aplique de inmediato a varias acciones, escriba ... en cada fila subsiguiente. Por ejemplo:

Condición que se aplica a varias acciones de macro

 Sugerencia   Para hacer que Access omita temporalmente una acción, especifique Falso como condición. Omitir temporalmente una acción puede ser de utilidad cuando esté tratando de encontrar problemas en una macro.

Ejemplos de condiciones de macro

Utilice esta expresión Para llevar a cabo la acción si
[Ciudad]="París" París es el valor de Ciudad en el campo en el formulario desde el cual se ejecutó la macro.
DCont("[IdPedido]", "Pedidos")>35 Hay más de 35 entradas en el campo IdPedido de la tabla Pedidos.
DCont("*", "Detalles de pedido", "[IdPedido]=Formularios![Pedidos]![IdPedido]")>3 Hay más de tres entradas en la tabla Detalles de pedidos para los cuales el campo IdPedido de la tabla coincide con el campo IdPedido del formulario Pedidos.
[FechaEnvío] Between #2-Feb-2007# And #2-Mar-2007# El valor del campo FechaEnvío del formulario desde el cual se ejecuta la macro no es anterior a 2-Feb-2007 y no es posterior a 2-Mar-2007.
Formularios![Productos]![UnidadesEnStock]<5 El valor del campo UnidadesEnStock del formulario Productos es menor que cinco.
EsNulo([Nombre]) El valor Nombre del formulario desde el que se ejecuta la macro es Nulo (Null: valor que puede especificarse en un campo o usarse en expresiones o consultas para indicar datos desconocidos o ausentes. En Visual Basic, la palabra clave Null indica un valor Null. Algunos campos, como los de clave principal, no pueden contener un valor Null.) (no tiene valor). Esta expresión es equivalente a [Nombre] Es Nulo.
[País]="UK" And Formularios![TotalVentas]![TotalPedidos]>100 El valor en el campo País del formulario desde el que se ejecuta la macro es UK, y el valor del campo TotalPedidos del formulario TotalVentas es mayor que 100.
[País] In ("Francia", "Italia", "España") And Longitud([CódigoPostal])<>5 El valor en el campo País del formulario desde el cual se ejecuta la macro es Francia, Italia o España y el código postal no es de 5 caracteres de longitud.
CuadroMsj("¿Confirmar cambios?",1)=1 Haga clic en Aceptar en un cuadro de diálogo donde la función CuadroMsj muestra "¿Confirmar cambios?". Si hace clic en Cancelar en el cuadro de diálogo, Access omite la acción.
[VariablesTemporales]![MiVar]=43 El valor de la variable temporal MiVar (creada mediante la acción de macro DefinirVariableTemporal) equivale a 43.
[ErrorDeMacro]<>0 El valor de la propiedad Número del objeto ErrorDeMacro no es igual a 0, lo que significa que se ha producido un error en la macro. Esta condición se puede utilizar junto con las acciones de macro BorrarErrorDeMacro y AlOcurrirError para controlar lo que sucede cuando se produce un error.

Para obtener más información sobre las expresiones, vea el artículo Crear una expresión.

Volver al principio Volver al principio

Obtener más información sobre las acciones de las macros

Mientras trabaja en el Generador de macros, puede obtener más información sobre una acción o un argumento haciendo clic en él y leyendo su descripción en el cuadro de la esquina inferior derecha de la ventana del Generador de macros. Además, cada acción de macro tiene asociado un tema de la Ayuda. Para obtener más información sobre una acción, elija la acción de la lista de acciones y, a continuación, presione F1.

Volver al principio Volver al principio

 
 
Corresponde a:
Access 2007