Création de Macro par le menu

Qu’est ce qu’une macro?

Une macro reprend une ou plusieurs commandes Access exécutées les unes à la suite des autres, chacune exécutant une tâche précise. Les actions exécutées peuvent être l’ouverture (la fermeture) d’un formulaire, imprimer un état ou rafraîchir la fenêtre en cours par une procédure événementielle.
Dans le chapitre 7 de cette formation, nous avons utilisé l’aide de l’assistant pour créer un menu de démarrage. Cette méthode pour créer une macro a l’avantage d’être simple et le défaut d’avoir un choix d’actions limitées.
L’autre possibilité utilise le menu Macro. Cette solution permet d’autres choix, mais également de faire exécuter plusieurs actions les unes derrière les autres. Nous verrons dans le chapitre suivant que ces macros sont surtout utilisées dans les procédures événementielles. Analyser toutes les macros Access serait trop long, ce chapitre reprend donc les principales.
Nous n’utiliserons pas dans cette formation Access les modules, plus spécifiques à la programmation.
Une dernière remarque, à la différence des macros de Word ou d’Excel, une macro Access n’est pas enregistrée en suivant vos actions mais bien en sélectionnant les commandes disponibles.

Notre première macro

Commençons par une création simple. Sélectionnons le menu Macro et cliquons sur le bouton Nouveau. La fenêtre suivante apparaît.
La fenêtre Macro est divisée en 3 parties:
1. la partie action, en haut à gauche (en gros une liste de choix), reprend la liste des commandes disponibles.
2. une partie commentaire optionnelle
3. en dessous les options en fonction de l’action sélectionnée.
Nous allons créer une macro qui ouvre un formulaire pour débuter.
Sélectionnons comme action « Ouvrir Formulaire »
Dans la partie en bas, sélectionnez le formulaire à l’aide de la liste déroulante. Comme mode d’affichage, vous avez le choix entre: Formulaire (le mode standard), création (modification du formulaire), aperçu avant impression, feuille de données, …
Vous pouvez également créer un filtre ou une condition ou sélectionner le mode Données:
1. Ajout
2. Modification
3. Lecture seule
Cette macro peut être utilisée avec un bouton (cf. le chapitre 7 de cette formation) ou comme procédure événementielle (le chapitre suivant).

Macro d’ouverture et fermeture

Commençons par les macros permettant d’ouvrir ou de fermer une table, une requête, un formulaire ou un état. Le principe est le même pour toutes.
Les procédures d’ouverture commencent toutes par ouvrir
Ouvrir une table: OuvrirTable
Cette macro n’est pas très différente de la macro ci-dessus qui ouvrait un formulaire. Elle est même plus simple. Un premier point intéressant est le mode d’ouverture: ajout (uniquement ajout d’enregistrement), modification (ajout, lecture et modification, c’est le mode qui offre le plus de possibilités), lecture seule (pas de modification possible).
L’utilisation de la macro d’ouverture d’une requête Ouvrir Requête est parfaitement identique.
Ouvrir un état: OuvrirEtat
Cette macro d’ouverture d’état est similaire à celle d’une table ou d’une requête. La seule distinction vient du mode affichage qui peut être en impression directe (immédiate) ou Aperçu avant impression. Dans ce dernier mode, l’utilisateur doit confirmer la demande d’impression. Cette option est préférable, elle évite des erreurs de choix qui imprimeraient des dizaines de pages inutiles.
Fermer
Toutes les commandes de fermeture sont rassemblées sous 1 seule macro: Fermer. Le choix du type et du nom de l’objet se définissent dans les options de la commande.

Macro de recherche

Sont regroupées ici les commandes permettant de rechercher des données à l’aide d’une macro dans une table, requête ou formulaire actif. L’utilisation de ce type de commande nécessite donc une ouverture de formulaire, table ou requête dans la même macro au préalable ou l’utiliser.
Les options de la commande macro Trouver Enregistrement sont similaires aux recherches manuelles d’Access..

Cours gratuitTélécharger le cours complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *