Unidad 14. Las macros (III)


14.5. El flujo del programa

Como cualquier programa, una macro tiene un flujo que determina cómo se van a ejecutar las diferentes acciones que contiene.

Hemos dicho que, en principio, las acciones se ejecutan de forma secuencial, una tras otra y en el orden en que se han ido colocando. Pero esto no es siempre así. En ocasiones puede interesarnos que el programa fluya de una forma diferente, que ejecute una acción sólo si se cumple una determinada condición. Puede interesarnos dividir las acciones en bloques o crear una determinada jerarquía.

Access 2013 nos permite realizar todas estas acciones de forma muy sencilla e intuitiva. Si nos fijamos en el panel derecho Catálogo de acciones, encontraremos un apartado denominado Flujo de programas. En él encontraremos las opciones necesarias para estructurar la macro según nuestras necesidades. Flujo de programas

Para introducir un elemento sólo deberemos hacer doble clic sobre él. Se insertará en la pantalla principal que contiene las acciones y podremos modificarlo desde allí.

- Los comentarios son texto aclarativo que no se ejecuta. Son como notas del diseñador/programador para documentar lo que va realizando y hacer más legible la macro. Es muy recomendable utilizarlos para ir indicando lo que se va haciendo en la macro porque al cabo de un tiempo puede que no te acuerdes de lo que hacía la macro y te vendrán muy bien esos comentarios. Aparece un recuadro para escribir el texto, tal cual y cuando finalizamos vemos que se ha englobado entre unas etiquetas /* Así */ y se ha coloreado en verde para resaltarlo. Comentario de macro

- El grupo tampoco se ejecuta, es una forma de englobar en un bloque un conjunto de acciones, de forma que quede mejor estructurado.

- La opción Si permite que se ejecuten determinadas acciones únicamente si se cumple la condición especificada.

- Y la submacro es un conjunto de acciones que no entran en el flujo de ejecución directamente, sino que se han de activar de forma explícita mediante las acciones EjecutarMacro o AlOcurrirError.

 

14.6. Acciones condicionadas

Vamos a profundizar un poco en la opción condicinal SI del flujo del programa.

Cuando introducimos una condición haciendo doble clic sobre la opción en el Catálogo de acciones, se introduce en la página principal como si se tratase de una acción más, con la salvedad de que nos permite establecer una condición de forma manual o mediante el Generador de expresiones (desde el botón en forma de varita).

Agregar condición

Si esta condición resulta cierta, Entonces se efectuará la acción que indiquemos a continuación.

Podemos utilizar Agregar Si no para indicar las acciones que queremos que se ejecuten en caso de que la condición no se cumpla.

También podemos introducir otra condición, que ejecutará unas acciones distintas si no se cumple la condición del bloque anterior y sí la condición introducida al pulsar Agregar O si (para los que sepan programar es equivalente a un elseif).

Con estas simples herramientas podemos crear condiciones de lo más complejas.

La ventaja principal de la nueva interfaz para crear macros es la legibilidad del código, que queda perfectamente estructurado y es sencillo de interpretar a simple vista.

Macro condicional

Para sacar el máximo partido a las acciones condicionadas lo único que hay que tener claro es qué condición se tiene que cumplir y qué efectos queremos que tenga (las acciones). Para ello es recomendable hacer un análisis previo con el fin de tener bien claras las ideas antes de empezar.

Un ejemplo de condición simple sería [Formularios]![Cursos]![Código Curso] = 4 que únicamente desencadenaría las acciones si el contenido del control Código Curso del formulario Cursos es igual a 4.

Pero también podemos utilizar una expresión más compleja, por ejemplo:

O incluso unir varias condiciones utilizando los operadores Y y O como vimos en el tema de consultas.

Para entender mejor las condiciones te recomendamos que realices el Ejercicio Crear macro condicional.

En los casos en los que utilicemos macros con condicionales nos será muy útil el uso de la acción DetenerMacro, en el siguiente Ejercicio de Condiciones avanzadas verás por qué.


Enero-2015
Pág. 14.3
Atrás Inicio Adelante






Página inicial  Cursos Informática Gratuitos

Síguenos en:   Facebook       Sobre aulaClic            Política de Cookies


© aulaClic. Todos los derechos reservados. Prohibida la reproducción por cualquier medio.