Tema 9 macros

12

Transcript of Tema 9 macros

Page 1: Tema 9   macros
Page 2: Tema 9   macros

Índice

MACROS ................................................................................................................................................. 3

1. DISEÑAR UNA MACRO ...................................................................................................................... 3 1.1. Columnas de la ventana macro ............................................................................................. 4 1.2. Secuencia de acciones de la macro ..................................................................................... 5

2. EJECUTAR UNA MACRO DE FORMA DIRECTA ...................................................................................... 5 3. ASIGNAR UNA MACRO A UN EVENTO DE UN CONTROL DE FORMULARIO ................................................ 5 4. MODIFICAR MACRO ......................................................................................................................... 8 5. GRUPO DE MACROS ........................................................................................................................ 8 6. ACCIONES EN MACROS .................................................................................................................... 9 7. BUCLE CON MACRO ....................................................................................................................... 12

Page 3: Tema 9   macros

Tema 9. Macros

C/ Miguel de Unamuno, 1_47008_Valladolid

Tel. 983249455 / 625569162_Fax 983243547

[email protected]_www.ticsyformacion.com

Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa

Tel. 943830230_Fax 943830233

[email protected]_www.lombokdesign.com

3

Macros

En este tema se describe cómo crear, modficar, una macro y como asignarla al evento de un

control de un formulario.

Una macro es un objeto de automatización de tareas. Por sí sola almacena una lista de tareas,

en un orden determinado y a las que puede asignar ciertas reglas o criteriospara que ocurran.

Cuando ejecuta la macro se ejecutan cada una de las tareas que se han almecenado en ella.

Son de gran utilidad en formularios porque les aportan mayor funcionalidad.

1. Diseñar una macro

Desde el panel de exploración, utilice el comando Macro de la ficha Crear. En el desplegable

seleccione Macro

Mostrará la ventana de diseño de la macro. En la columna acción seleccione la primera tarea

que llevará a cabo la macro.

En el momento que selecciona una tarea, le muestra en la parte inferior el panel de argumentos,

que deberá rellenar para especificar con claridad esa acción. Dependiendo de la acción elegida

los argumentos que precisa serán diferentes.

Page 4: Tema 9   macros

Tema 9. Macros

C/ Miguel de Unamuno, 1_47008_Valladolid

Tel. 983249455 / 625569162_Fax 983243547

[email protected]_www.ticsyformacion.com

Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa

Tel. 943830230_Fax 943830233

[email protected]_www.lombokdesign.com

4

1.1. Columnas de la ventana macro

En la vista diseño de la macro puede mostrar/ocultar diferentes columnas empleando los

comandos correspondientes en la ficha Diseño.

Columna Acción, haga clic en la flecha para presentar la lista de acciones y seleccione la que

desee utilizar.

Columna Argumentos, se rellena automáticamente cuando completa el panel de argumentos de

la acción, de la parte inferior.

Si no desea mostrarla desactive el comando Argumentos de la ficha Diseño.

Columna Comentarios, para incluir una breve descripción de la tarea que realiza esa acción. Los

comentarios son opcionales pero harán la macro más fácil de entender y mantener.

Columna Nombres de macro, sólo resulta útil si está creando un grupo de macros, para ver el

nombre de cada macro que forma parte del grupo.

Para visualizar esta columna debe activar el comando Nombres de macro de la ficha Diseño

Page 5: Tema 9   macros

Tema 9. Macros

C/ Miguel de Unamuno, 1_47008_Valladolid

Tel. 983249455 / 625569162_Fax 983243547

[email protected]_www.ticsyformacion.com

Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa

Tel. 943830230_Fax 943830233

[email protected]_www.lombokdesign.com

5

Columna Condición. En esta columna puede escribir pruebas lógicas que indican que si el

resultado es verdadero se ejecuta la acción que se muestra en esa fila.

Para visualizar esta columna debe activar el comando Condiciones de la ficha Diseño

1.2. Secuencia de acciones de la macro

Las acciones se agregan en la columna Acción, utilizando una fila para cada acción y en el orden

en el que desea que se ejecuten posteriormente. Para cada acción, debe especificar los

argumentos o datos necesarios para que se pueda llevar a cabo dicha acción. Puede especificar

o no condiciones para que se ejecuten dichas acciones en la columna Condición.

Si la secuencia no es lógica, cuando ejecute la macro causará error y se detendrá la ejecución

de la misma.

Un ejemplo de secuencia no lógica es ir a un registro determinado y luego abrir el formulario,

pues es una vez abierto el formulario cuando nos podemos desplazar por los registros.

Una vez terminada la macro, pulse el botón Guardar del menú de acceso rápido y cierre la

ventana de la macro.

2. Ejecutar una macro de forma directa

Desde el panel de exploración, haga doble clic sobre el nombre de la macro a ejecutar.

Otro método será pulsando el botón derecho del ratón sobre el nombre de la macro, y en el

menú contextual seleccionar Ejecutar.

3. Asignar una macro a un evento de un control de formulario

Una macro se puede asignar a cualquier evento de calquier elemento del formulario, siempre

que éste tenga eventos. Las etiquetas y las líneas rectas no tienen eventos y es porque el

usuario no interactúa con ellas. También tienen eventos las secciones y el propio formulario.

Un evento es cómo interactúa un usuario con ese elemento. Al asignar macro, se indica cómo

debe responder cuando el usuario interactúa así.

Page 6: Tema 9   macros

Tema 9. Macros

C/ Miguel de Unamuno, 1_47008_Valladolid

Tel. 983249455 / 625569162_Fax 983243547

[email protected]_www.ticsyformacion.com

Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa

Tel. 943830230_Fax 943830233

[email protected]_www.lombokdesign.com

6

Lo normal es asignar la macro a un botón de comando que aparezca en algún formulario, para

que se ejecute como respuesta a un evento sobre dicho control:

En la presentación diseño del formulario seleccione el control al que asignará la macro.

Visualice la tabla de propiedades del mismo.

En la ficha Eventos, seleccione la propiedad o evento que hará que se ejecute la macro; en la

lista seleccione la macro.

En muchas ocasiones se desea asignar una macro a un botón de comando. Veamos con un

ejemplo cómo asociarlo.

La macro creada anteriormente se ha guardado con el nombre iraultimocurso

En el formulario FCOSTES se va a incluir in botón de comando en el encabezado del formulario.

Cuando haga clic en ese botón debe ejecutar la macro almacenada

Muestre la vista diseño del formulario FCOSTES e inserte el control botón de comando

Seleccione en Categorías ‘Otras’ y en Acciones ‘Ejecutar macro’

Seleccione la macro que trata de asociar al botón de comando.

Page 7: Tema 9   macros

Tema 9. Macros

C/ Miguel de Unamuno, 1_47008_Valladolid

Tel. 983249455 / 625569162_Fax 983243547

[email protected]_www.ticsyformacion.com

Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa

Tel. 943830230_Fax 943830233

[email protected]_www.lombokdesign.com

7

Escriba el texto que mostrará ese botón. Debe ser claro para que el usuario intuya la acción que

realizará cuando haga clic en el botón.

Por último pedirá el nombre del control. Puede dejar el nombre que asigna automáticamente.

La macro seleccionada se ha incuido en la propiedad Al hacer clic de este botón de comando.

Para probar si funciona, debe pasar a la vista formulario, y una vez allí, hacer clic en ese botón

de comando.

Page 8: Tema 9   macros

Tema 9. Macros

C/ Miguel de Unamuno, 1_47008_Valladolid

Tel. 983249455 / 625569162_Fax 983243547

[email protected]_www.ticsyformacion.com

Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa

Tel. 943830230_Fax 943830233

[email protected]_www.lombokdesign.com

8

4. Modificar macro

Desde el panel de exploración, pulse el botón derecho del ratón sobre el nombre de la macro, y

en el menú contextual seleccione Vista Diseño.

Desde esa ventana podrá modificar argumentos de las acciones, incluir o eliminar acciones.

Cada fila de acción tiene un selector, que puede seleccionar y si utiliza el menú contextual podrá

insertar, eliminar, …

5. Grupo de macros

En la ventana de diseño de la macro, muestre la columna Nombre de macro.

En la primera celda de la columna Nombre de macro, introduzca un nombre para identificar la

primera macro del grupo. En la celda de la misma fila, de la columna Acción seleccione la

primera acción que debe ejecutar dicha macro. Si la macro requiere más acciones, continúe

seleccionando acciones en las celdas de la columna Acción, contiguas a la anterior.

Para incluir otra macro en el grupo, en la fila inmediata siguiente a la última acción de la primera

macro, escriba el nombre de la segunda macro en la columna Nombre de macro. Repita los

pasos descritos anteriormente, ...

Para hacer referencia a una macro en un grupo de macros, utilice esta sintaxis:

NombreGrupoMacros.NombreMacro

Donde NombreGrupoMacros es el nombre que da cuando utiliza el comando Guardar, y

NombreMacro,el nombre que escribe en la columna Nombre de macro.

Page 9: Tema 9   macros

Tema 9. Macros

C/ Miguel de Unamuno, 1_47008_Valladolid

Tel. 983249455 / 625569162_Fax 983243547

[email protected]_www.ticsyformacion.com

Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa

Tel. 943830230_Fax 943830233

[email protected]_www.lombokdesign.com

9

Un grupo de macros, no se ejecuta directamente, aunque su nombre aparezca en el panel de

exploración. Se utiliza la referencia a una de sus macros (tal como se indicaba anteriormente) en

alguna propiedad de evento de un control.

6. Acciones en macros

Acción Descricpción Argumentos

AbrirConsulta Abre una consulta de selección o ejecuta una consulta de acción

Nombre Vista Modo de datos

AbrirFormulario Abre un formulario Nombre Vista Nombre del filtro Condición WHERE Modo de datos Modo de la ventana

AbrirInforme Abre un informe Nombre Vista Nombre del filtro Condición WHERE Modo de la ventana

AbrirTabla Abre una tabla Nombre de la tabla Vista Modo de datos

AgregarMenú Para crear una barra de menú o un menú contextual

Nombre del menú Nombre de macro de menú Texto de la barra de estado

AlOcurrirError Define el comportamiento de control de errores. Puede ejecutar la acción siguiente, la macro que especifique en el segundo argumento, o detiene y anula la macro.

Ir a Nombre de la macro

AplicarFiltro Para aplicar un filtro, una consulta o una sentencia SQL a una tabla, formulario o informe.

Nombre del filtro Condición WHERE

Bip Emite un sonido por el altavoz de la máquina

BloquearPanelDeExploracion Se utiliza para bloquear o desbloquear el panel de exploración.

Bloquear

BorrarErrorDeMacro Restablece a 0 el numero de error almacenado en el objeto ErrorDeMacro.

BuscarRegistro Busca la primera instancia de datos que cumplan los criterios de los argumentos de esta acción.

Buscar Coincidir Coincidir mayúsculas y minúsculas Buscar en Buscar con formato Sólo el campo activo Buscar primero

BuscarSiguiente Busca el siguiente registro que cumpla los criterios dados por la acción BuscarRegistro anterior.

CancelarEvento Cancela el evento que hizo que se ejcutase esta acción.

Page 10: Tema 9   macros

Tema 9. Macros

C/ Miguel de Unamuno, 1_47008_Valladolid

Tel. 983249455 / 625569162_Fax 983243547

[email protected]_www.ticsyformacion.com

Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa

Tel. 943830230_Fax 943830233

[email protected]_www.lombokdesign.com

10

Acción Descricpción Argumentos

Cerrar Cierra una ventana de Access o la ventana activa si no se especifica ninguna.

Tipo de objeto Nombre del objeto Guardar

CerrarBaseDeDatos Cierra la base de datos actual

CuadroMsj Muestra un mensaje de advertencia o de información.

Mensaje Bip Tipo Título

DefinirCategoriasMostradas Se utiliza para especificar qué categorías se deben mostrar en el panel de exploración.

Mostrar Categoría

DefinirPropiedad Define la propiedad de un control Nombre del control Propiedad Valor

DefinirVariableTemporal Define una variable temporal con un valor determinado.

Nombre Expresión

DesplazarseA Se desplaza a un grupo y categoría específicos en el panel de exploración.

Categoría Grupo

DesplazarTamaño Mueve y cambia el tamaño de la ventana activa.

Derecho Abajo Ancho Alto

DetenerMacro Detiene la macro que se está ejecutando en ese momento.

DetenerTodasMacros Detiene todas las macros que se están ejecutando

EjecutarCódigo Ejecuta un procedimiento de función de Visual Basic. Para ejecutar un subprocedimiento o procedimiento de evento , cree un procedimiento de función que llame a ese procedimiento de evento.

Nombre de función

EjecutarComando Ejecuta un comando incluido en la aplicación Microsoft Access. Debe ser adecuado para la vista en la que se encuentre.

Comando

EjecutarMacro Ejecuta una macro. Puede utilizarse para llamar a una macro desde otra macro, ejecutar una macro que depende de una condición, repetir una macro, o adjuntar una macro a un comando de un menú personalizado.

Nombre de macro Número de repeticiones Expresión de repetición

EncontrarRegistro Busca un registro basado en un criterio en un objeto.

Tipo de objeto Nombre del objeto Registro Condición WHERE

Page 11: Tema 9   macros

Tema 9. Macros

C/ Miguel de Unamuno, 1_47008_Valladolid

Tel. 983249455 / 625569162_Fax 983243547

[email protected]_www.ticsyformacion.com

Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa

Tel. 943830230_Fax 943830233

[email protected]_www.lombokdesign.com

11

Acción Descricpción Argumentos

EnviarObjeto Envía a través de correo electrónico un objeto: una hoja de datos, un formulario, un informe o un módulo en el formato que le indique.

Tipo de objeto Nombre del objeto Formato de resultados Para Cc Cco Asunto Texto del mensaje Modificar el mensaje Archivo de plantilla

EstablecerElementoDelMenú Establece el estado de los elementos de menús personalizados.

Índice del menú Índice del comando Índice del subcomando Indicador

IrAControl Mueve el enfoque al campo o control especificado en el formulario u hoja de datos activos

Nombre del control

IrAPágina Mueve el enfoque al primer control de una página determinada del formulario activo

Página número Derecho Abajo

IrARegistro Convierte el registro especificado en registro activo, en la hoja de datos o formulario activos

Tipo de objeto Nombre del objeto Registro Desplazamiento

Maximizar Maximiza la ventana activa

Minimizar Minimiza la ventana activa

MostrarTodosRegistros Quita cualquier filtro aplicado sobre la tabla, consulta o formulario activo para presentar todos los registros

NuevaConsulta Actualiza los datos de un determinado control del objeto activo

Nombre del control

PasoAPaso Pausa la ejecución de la macro y muestra el cuadro de diálogo Macro paso a paso

QuitarTodasLasVariablesTemporales

Quita todas las variables temporales

QuitaVariableTemporal Quita la variable temporal que se indica

Nombre

RelojDeArena Cambia el puntero del ratón a un reloj de arena mientras se ejecuta la macro

Reloj de arena activo

RepintarObjeto Completa cualquier actualización pendiente de la pantalla de un objeto de la base de datos o del objeto activo si no se especifica ninguno

Tipo de objeto Nombre del objeto

Restaurar Restaura la ventana activa al tamaño anterior

SalidaHacia Vuelca los datos del objeto especificado a un archivo de formato xls, txt, rtf, htm, o archivo Snapshot (snp)

Tipo de objeto Nombre del objeto Formato de resultados Archivo de resultados Autoinicio Archivo de plantilla Codificación Calidad de salida

Salir Sale de Microsoft Access Opciones

Page 12: Tema 9   macros

Tema 9. Macros

C/ Miguel de Unamuno, 1_47008_Valladolid

Tel. 983249455 / 625569162_Fax 983243547

[email protected]_www.ticsyformacion.com

Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa

Tel. 943830230_Fax 943830233

[email protected]_www.lombokdesign.com

12

Acción Descricpción Argumentos

SeleccionarObjeto Selecciona un objeto de la base de datos

Tipo de objeto Nombre del objeto En ventana de la base de datos

7. Bucle con macro

Un bucle consiste en ejecutar una macro o bien un número de veces o bien mientras no ocurra

una condición.

Para crear un bucle con una macro A, diseñe una segunda macro B. Seleccione como accíón

Ejecutar macro, y en el argumento Nombre de macro seleccione la macro a repetir A

Si especifica un número en el argumento Número de repeticiones, se ejecutará ese número de

veces.

Si especifica una expresión de repetición, en el momento en el que sea verdadera, la macro se

detendrá. Esa expresión la creará empleando el generador de expresiones.