Cours ACCESS exécuter des actions en fonction de conditions, tutoriel & guide de travaux pratiques ACCESS en pdf.
Exécuter la macro pas à pas
Pour analyser le déroulement d’une macro, on peut l’exécuter pas à pas, c’est-à-dire, action après action.
Pour cela :
1. Ouvrir la macro en mode création
2. Cliquer sur l’icône :
3. Exécuter ensuite la macro
Access affiche la première action ainsi que ses paramètres, cliquez sur :
?? Pas à pas : pour exécuter cette action et passer à la suivante
?? Arrêter : pour stopper l’exécution de la macro
?? Continuer : Pour poursuivre l’exécution de la macro en mode normal
Modifier une macro
Pour modifier une macro, ouvrez là en mode création et positionnez vous sur l’action à modifier, cliquez dessus avec le bouton droit : vous pouvez alors la supprimer ou en insérer une autre.
Création d’une macro associée à un formulaire
Certaines macros doivent être exécutées en réponse à un événement lié au formulaire (ouverture, fermeture, fermeture…), d’autres dépendent d’un événement lié à un contrôle du formulaire (clic, valeur du contrôle, etc.). Dans le premier cas, la macro doit être insérée dans la feuille de propriétés du formulaire, dans le second cas, elle doit apparaître dans la feuille de propriétés du contrôle.
Il faut définir précisément quel est l’événement qui va déclencher l’exécution de la macro (quand tel événement se produit, telles actions vont se dérouler).
Prenons un exemple, nous voulons refuser l’enregistrement d’une commande si la date de cette commande n’a pas été saisie. (Nous pourrions dans les propriétés du champ date, indiquer dans la propriété Null Interdit Oui).
La question à se poser est : « Quand va-t-on vérifier que le champ date est vide ? », Il n’y a qu’une
réponse : « Quand on passera à un nouvel enregistrement, que ce soit pour retourner sur un enregistrement précédent ou pour en créer un nouveau ». Donc, lorsqu’on passera à un nouvel enregistrement, si la date est vide, on va afficher un message d’erreur, et positionner le curseur à nouveau sur le champ date pour pouvoir le saisir.
L’événement « passer à un nouvel enregistrement » est lié au formulaire et pas au contrôle « Date », l’événement sera donc associé au formulaire.
Dans notre exemple, il faut que la macro s’exécute lorsqu’on va accéder à un nouvel enregistrement, on va donc l’affecter à l’événement « AvantMAJ » du formulaire : il faut que la vérification de la bonne saisie de la date se fasse lorsque l’on veut changer d’enregistrement mais avant qu’Access n’enregistre quoi que ce soit.
Exécuter des actions en fonction de conditions
1. On va créer une nouvelle macro pour vérifier la date, une fois la fenêtre de la macro ouverte, cliquez sur l’icône :
2. Une nouvelle colonne apparaît dans la fenêtre de la macro, c’est la colonne « Condition », c’est dans cette colonne qu’on va taper la condition qui décidera si oui ou non l’action de la macro doit s’exécuter.
3. On veut qu’un message d’erreur s’affiche lorsque la date de la commande est vide, la condition pour que le message s’affiche est donc : [date de la commande] Est Null. L’action qui va être déclenchée si la condition s’avère vraie va être l’affichage d’un message d’erreur.
Afficher un message
Pour afficher un message pendant une macro, on utilise l’action « BoîteMsg », « BoîteMsg » va afficher une boîte de dialogue Windows avec le texte et les caractèristiques qu’on va indiquer dans les paramètres de l’action.
L’action « BoîteMsg » a les paramètres suivants :
?? Message : texte à afficher
?? Bip : Emet un bip sonore lors de l’affichage du texte
?? Type : Icône à afficher à côté du texte (point d’exclamation, d’interrogation, etc…)
?? Titre : titre de la fenêtre où va s’afficher le texte
Déplacer le curseur
Une fois le message d’erreur affiché, il va falloir positionner le curseur automatiquement sur le contrôle Date, pour que l’utilisateur puisse le resaisir.
Il existe plusieurs actions pour déplacer le curseur :
?? AtteindreContrôle : Déplace le curseur sur un contrôle spécifié
?? AtteindrePage : Déplace le curseur sur le premier contrôle de la page spécifiée
?? AtteindreEnregistrement : Déplace le curseur sur l’enregistrement spécifié ou sur un nouvel enregistrement.
1. Introduction
2. Création d’une macro autonome
3. Exécuter la macro pas à pas
4. Modifier une macro
5. Création d’une macro associée à un formulaire
6. Exécuter des actions en fonction de conditions
7. Afficher un message
8. Déplacer le curseur
9. Affectation de la macro à l’événement
10. Définir la valeur d’un champ dans une macro
11. Mettre un bouton de commande dans un formulaire
12. Ouvrir un formulaire et afficher un enregistrement
13. Créer une boite de dialogue
………