Un exemple de création d'une macro en accès. Utilisation de macros dans une base de données Microsoft Access. Fonctions de macro dans Access

Accéder

Explorez les possibilitésAccédersur la création de macros

1. Introduction

Utiliser des macros dans une base de données Microsoft Access

Les macros peuvent être utilisées pour effectuer presque toutes les actions sur les objets Access. Une fonctionnalité importante d'Access par rapport aux composants Microsoft Office tels que Word et Excel est la capacité, à l'aide de macros et de modules VBA, de déterminer la réponse de l'application à divers événements dans les formulaires et les rapports, tels que les clics sur des boutons, les modifications de données, l'ouverture et la fermeture de formulaires. formulaires et rapports, obtenir le focus d'un formulaire ou d'un contrôle de formulaire, etc.

Une macro dans Access est une structure composée d'une ou plusieurs commandes de macro exécutées séquentiellement ou dans un ordre spécifié par certaines conditions. L'ensemble des commandes de macro dans Access est très large ; à l'aide de macros, vous pouvez implémenter une grande partie de ce qu'une procédure dans VBA peut faire. Chaque macro a un nom spécifique et éventuellement un ou plusieurs arguments spécifiés par l'utilisateur. Par exemple, lors de l'utilisation de la commande macro OpenForm, vous devez spécifier en arguments au moins le nom du formulaire à ouvrir et le mode d'affichage à l'écran.

Microsoft Access 2000 contient une liste de commandes macro regroupées en catégories : utilisation des données dans des formulaires et des rapports ; exécution de commandes, macros, procédures et requêtes ; travailler avec des objets; import/export de données et objets et autres. La catégorie « » contient toutes les commandes macro qui permettent d'influencer l'interface de l'application.

Les actions réalisables à l’aide des macros sont très variées. Même si vous n'utilisez pas de macros dans vos applications, cela vaut la peine de vous renseigner sur ces macros car elles peuvent également être utilisées dans les procédures VBA.

L'utilisation de macros se justifie par le fait qu'elles sont faciles à créer et ne nécessitent pas l'apprentissage de la syntaxe d'un langage de programmation. Comme nous le montrerons dans la section suivante, la création d'une macro ne nécessite que des connaissances de base des techniques Microsoft Access et Windows, telles que faire glisser des objets hors d'une fenêtre. Base de données dans une fenêtre spéciale - Constructeur de macros, en sélectionnant une action dans la liste et en saisissant des expressions comme arguments dans la macro. Par conséquent, si vous ne voulez vraiment pas apprendre la syntaxe du langage VBA ou si cela vous semble trop difficile, n'hésitez pas à utiliser des macros et vous obtiendrez une application avec de nombreuses fonctionnalités.

L'objectif principal des macros est de créer une interface d'application pratique : afin que les formulaires et les rapports s'ouvrent lorsque vous cliquez sur les boutons du formulaire ou de la barre d'outils, ou en sélectionnant simplement une commande de menu ; de sorte qu'à l'ouverture de l'application, l'utilisateur ne voit pas une fenêtre sur l'écran Base de données, rempli de nombreux tableaux, requêtes, formulaires et rapports, mais d'un formulaire compréhensible avec lequel vous pouvez immédiatement effectuer les actions souhaitées, etc.

À l'aide de macros, vous pouvez créer des menus et des barres d'outils pratiques pour votre application.

Cependant, l’utilisation de macros présente également certains inconvénients :

§ Les capacités des commandes macro sont limitées par rapport aux capacités du langage VBA, donc dans certains cas, la programmation en VBA n'est pas possible, même si vous devez d'abord vous assurer que ces capacités supplémentaires sont réellement nécessaires. VBA vous donne plus de puissance pour travailler avec des données, vous permettant d'utiliser la programmation objet pour communiquer avec d'autres applications, appeler des fonctions à partir de bibliothèques de chargement dynamique (DLL) Windows et créer vos propres fonctions personnalisées.

§ Les macros peuvent être utilisées presque partout où des procédures VBA sont utilisées, mais les procédures VBA ont tendance à s'exécuter plus rapidement.

§ Les macros sont des objets qui existent séparément des formulaires et des rapports dans lesquels elles sont utilisées, donc lorsqu'il y a beaucoup de ces objets, leur maintenance devient assez difficile. Les procédures événementielles VBA utilisées dans les formulaires et les rapports font partie intégrante de ces formulaires et rapports, ce qui présente des avantages. Par exemple, lorsque vous migrez des formulaires et des états d'une base de données vers une autre, les procédures associées sont automatiquement migrées avec eux.

Cependant, dans de nombreux cas, l'utilisation de macros est tout à fait justifiée, car elle simplifie et accélère considérablement le développement d'applications. Ils peuvent être utilisés lors de la création de petites applications mono-utilisateur, bien que lors de la création d'applications multi-utilisateurs ou client-serveur où la vitesse de l'application est critique, il est préférable d'utiliser VBA.

2. Partie principale.

2.1. Création de macros

Microsoft Access dispose d'un outil spécial pour créer des macros - Constructeur macro. Examinons le processus de création d'une macro à l'aide du constructeur.

Constructeur de macros

Il existe deux manières d'ouvrir la fenêtre Macro Designer pour créer une nouvelle macro :

1. Développez la liste des macros dans la fenêtre Base de données en cliquant gauche sur le raccourci Macro, et appuyez sur le bouton Créer en haut de la fenêtre.

Riz. 1. Bouton pour créer une macro

2. Cliquez sur la flèche vers le bas du bouton Nouvel objet sur la barre d'outils Base de données et sélectionnez l'élément Macro.

https://pandia.ru/text/78/436/images/image003_65.jpg" width="395" height="256">

Riz. 3. Générateur de macros et panneau d'arguments

La partie supérieure de la fenêtre Designer - le panneau de descriptions - se compose de plusieurs colonnes. Par défaut, ce panneau affiche deux colonnes : Macro et Note. Le panneau de description permet de définir la séquence de commandes de macro qui composent la macro.

Ligne dans la colonne Commande macro est une zone de liste déroulante dans laquelle vous pouvez sélectionner la macro-commande souhaitée.

Ligne dans la colonne Note est un champ de texte normal dans lequel vous pouvez saisir un commentaire décrivant l'action en cours.

Quand le terrain Commande macro rempli, un panneau d'arguments apparaît en bas de la fenêtre du constructeur de macro, qui est utilisé pour saisir les valeurs d'argument de la commande de macro correspondante. La liste des champs de ce panneau dépend de la macro sélectionnée et peut ne pas apparaître si la macro n'a pas d'arguments. De cette façon, lors de la création de macros, vous n'avez pas besoin de vous souvenir de la liste des arguments de chaque macro.

Le panneau des arguments comporte deux champs qui vous permettent de définir le nom du filtre et la condition de sélection des enregistrements. Pour définir une condition de sélection des enregistrements, vous pouvez utiliser le générateur d'expression.

Cette macro peut être utilisée dans un formulaire ou un état pour limiter le nombre d'enregistrements affichés.

Il existe une autre façon très simple de saisir une macro. Disons que vous devez créer une macro qui doit ouvrir le formulaire « Calcul » dans l'application « base de données1 " Pour faire cela dans la fenêtre Base de données il faut cliquer sur Forme, puis à l'aide de la barre d'outils (méthode 2), ouvrez le Macro Designer et faites glisser le formulaire « Calcul » dans le champ à l'aide de la souris. Commande macro Fenêtre du constructeur de macro.

Puis sur le terrain Commande macro La commande macro OpenForm apparaîtra automatiquement, et les champs du panneau arguments seront automatiquement renseignés : dans le champ Nom de forme le nom du formulaire « Calcul » apparaît dans le champ Mode- valeur par défaut Formulaire, dans le champ Mode fenêtre- signification Ordinaire. Les champs restants resteront vides.

De plus, vous pouvez rendre les entrées de ce formulaire indisponibles pour les modifications, à cet effet dans le champ Mode données vous devez entrer la valeur Lecture seule.

Riz. 4. Créez automatiquement des macros en faisant glisser des objets

De même, vous pouvez créer une macro en faisant glisser depuis la fenêtre Base de données tables, requêtes, rapports et autres macros. Dans ce cas, les macro-commandes correspondantes seront créées : OpenTable, OpenQuery, OpenReport, RunMacro.

Pour saisir des arguments dans une macro, vous devez le plus souvent sélectionner des valeurs dans des listes ou saisir des expressions. Pour saisir des expressions, vous pouvez utiliser le générateur d'expressions dont le bouton est situé à droite du champ d'argument. Un autre bouton de création d'expression se trouve dans la barre d'outils. Comme dans les autres cas, vous devez faire précéder l’expression d’un signe égal (=). Les exceptions sont l'argument Expression les commandes de macro définissent la valeur et l'argument Nombre de répétitions commandes de macro Exécuter la macro. Si vous entrez un signe égal devant une expression spécifiant la valeur de ces arguments, l'expression sera évaluée deux fois, ce qui peut conduire à des résultats indésirables.

Si vous devez spécifier le nom d'un objet de base de données comme argument d'une macro, vous pouvez soit le saisir à l'aide du clavier, le sélectionner dans une liste déroulante, soit spécifier le nom de l'objet en le faisant glisser depuis la fenêtre de la base de données. .

Ainsi, la macro-commande que nous avons créée ouvrira le formulaire « Calcul » en mode Lecture seule et n'y affichera que les responsables commerciaux. Comme mentionné précédemment, une macro peut contenir une séquence de plusieurs commandes macro. Par conséquent, dans la même macro, dans la ligne suivante, nous sélectionnerons l'action de macro Message qui, après avoir ouvert le formulaire, affichera une boîte de dialogue avec un message indiquant quels clients sont représentés dans le formulaire. Pour cela, saisissez dans le champ Message dans la barre d'argument le texte du message, par exemple

Le filtre par nom de famille est défini, les champs restants peuvent rester inchangés. Argument Signal détermine si la sortie du message sera accompagnée d'un signal sonore. Argument Taper détermine l'apparence de la boîte de dialogue de message. Argument Titre permet de préciser le texte qui sera affiché dans le titre de la fenêtre de message.

Si la base de données est volumineuse, la sélection des enregistrements dans le formulaire peut prendre un certain temps, il est donc recommandé d'afficher un curseur en forme de sablier pour indiquer que les données sont en cours de traitement. Pour ce faire, nous utiliserons la macro Hourglass. Les commandes de macro dans une macro sont exécutées dans l'ordre dans lequel elles sont écrites dans la colonne Commande macro, c'est-à-dire de haut en bas. La commande macro Hourglass doit être placée en premier, car le curseur doit changer avant que le formulaire ne soit affiché. Nous devons donc insérer une nouvelle ligne dans le panneau de description. Pour cela, placez le curseur sur la première ligne du panneau et appuyez sur le bouton Ajouter lignes sur la barre d'outils ou juste une touche . Une ligne vide apparaît. Dans cette ligne sur le terrain Commande macro Sélectionnons la commande macro Hourglass. Sur le terrain Allumer la valeur apparaîtra dans la barre d'argument Oui, installé par défaut, ce dont nous avons besoin. Pour redonner au pointeur de la souris son aspect d'origine, à la fin de la macro créée, vous devez saisir la même commande de macro Hourglass, mais avec la valeur Non argument Allumer.

À proprement parler, il est préférable de placer cette macro-commande avant la macro-commande permettant d'afficher un message à l'écran. Ceci est facile à résoudre puisque les commandes macro peuvent être facilement échangées à l’aide de la souris. Pour échanger les deux dernières commandes de macro, sélectionnez la dernière ligne en cliquant avec le bouton gauche sur la zone de sélection de ligne (à gauche dans la fenêtre Conception) et faites glisser la ligne vers le haut. La ligne horizontale indique l'emplacement de la nouvelle position de ligne. Relâchez le bouton de la souris lorsque cette ligne se trouve au-dessus de l'avant-dernière ligne.

Il ne reste plus qu'à sauvegarder la macro créée. Pour ce faire, vous pouvez sélectionner dans le menu Déposeréquipe Sauvegarder Comment ou appuyez sur une touche . La fenêtre Enregistrer la macro apparaîtra. Saisissez le nom de la macro dans le champ de saisie, en suivant les règles de dénomination des objets Access, par exemple, directeurs commerciaux.

2.2. Création de groupes de macros

Lors du développement d'une application utilisant des macros, le nombre de macros peut être très important. Il est donc important de bien organiser l’accès aux macros nécessaires. Pour ce faire, vous pouvez combiner plusieurs macros dans un seul objet Macro. Par exemple, il est recommandé que toutes les macros associées aux événements d'un formulaire ou d'un état soient regroupées dans un objet distinct correspondant à ce formulaire ou cet état. Pour ce faire, chaque macro du groupe doit avoir son propre nom, et le nom de l'objet Macro sera le nom du groupe de macros.

Pour créer un groupe de macros :

· Ouvrez le générateur de macros.

Figure 5. Ouverture du générateur de macros

· Cliquez sur le bouton Noms de macro dans la barre d'outils. Une autre colonne Nom de la macro apparaîtra dans le volet Descriptions de la fenêtre Macro Designer.

Figure 6. Colonne supplémentaire " Nom de la macro

· Dans cette colonne, saisissez le nom de la première macro. Il est préférable de laisser les champs restants de cette ligne vides - cela facilitera le déplacement et la copie des commandes de macro.

Figure 7. Saisie du premier nom de macro dans la colonne

· À partir de la ligne suivante, entrez toutes les commandes de macro dans la macro et les arguments correspondants pour chaque commande de macro.

Figure 8. Saisir toutes les macros et les arguments de chaque macro dans une macro

Pour indiquer la fin d'une macro, une macro distincte n'est pas nécessaire. Access continue d'exécuter une macro faisant partie d'un groupe jusqu'à ce qu'il rencontre une ligne contenant un nom dans la colonne Nom de la macro ou jusqu'à ce qu'il atteigne la dernière ligne de la fenêtre de la macro.

Lors du traitement d'une macro, les lignes vides sont ignorées, elles sont donc utiles pour séparer les macros dans un groupe. Cette technique, ainsi que la saisie de commentaires pour les macros complexes composées d'un grand nombre de macros, améliore la lisibilité des macros.

Pour exécuter l'une des macros du groupe, utilisez le nom complet pour référencer la macro. Le nom complet de la macro est formé comme suit : Groupname. Nom de macro.

2.3. Exécuter une macro à partir de la fenêtre Macro Designer

Cette méthode est utilisée pour tester une macro nouvellement créée ou corrigée. S'il n'y a qu'une seule macro dans la fenêtre Macro Constructor, alors pour l'exécuter, il vous suffit de cliquer sur le bouton Lancement https://pandia.ru/text/78/436/images/image010_13.jpg" width="623" height="362 src=">

Graphique 9. Bouton d'exécution de macro dans la barre d'outils

Voyons maintenant créer une barre d'outils spéciale et y placer un bouton d'appel de macro.

· Cliquez sur le raccourci Macro sur le panneau d'objet dans la fenêtre Base de données et sélectionnez la macro souhaitée.

· Sélectionnez une équipe Outils, Macro, Créer une barre d'outils à partir d'une macro. Une barre d'outils vide apparaît à l'écran.

https://pandia.ru/text/78/436/images/image012_6.jpg" width="63" height="84">

Graphique 11. Icône de macro

Le bouton porte le même nom que celui de la macro pour laquelle il a été créé.

Le même résultat peut être obtenu d’une autre manière :

· Ouvrez la fenêtre Paramètres en cliquant avec le bouton droit sur la barre d'outils.

· Dans la boîte de dialogue qui apparaît, développez l'onglet Barres d'outils et cliquez sur le bouton Créer.

Graphique 12. Fenêtre de dialogue " Paramètres" avec onglet " Barre d'outils", bouton " Créer

· Dans la boîte de dialogue qui apparaît, entrez un nom pour la nouvelle barre d'outils Mes macros et cliquez sur OK. Une barre d'outils vide apparaîtra.

Graphique 13. Entrer nom nouveau Barres d'outils

· Sélectionnez un onglet Équipes.

· Sélectionnez dans la liste Catégories signification Toutes les macros, et dans la liste Commandes, recherchez la macro « Ouvrir ».

· Faites glisser cette macro à l'aide de votre souris sur une barre d'outils vide.

https://pandia.ru/text/78/436/images/image016_4.jpg" width="176" height="252 src=">

Graphique 15. Menu contextuel du bouton nouvellement créé

Nous voyons que le mode d'affichage de ce bouton est marqué comme Style de base. De manière générale, vous pouvez mettre non seulement une icône sur un bouton, mais également du texte, ou du texte et une icône ensemble. Si vous souhaitez placer du texte (titre du bouton) sur le bouton, saisissez ce texte dans le champ Nom. Par défaut, ce champ affiche le nom de la macro.

Vous pouvez placer une icône différente sur le bouton en sélectionnant l'image que vous aimez dans le panneau spécial. Pour afficher un ensemble d'icônes standards, sélectionnez la commande dans le menu contextuel Sélectionnez une icône pour un bouton. Si aucune des images ne vous convient, vous pouvez sélectionner l'icône la plus proche en termes de conception, puis la corriger dans un éditeur spécial. Pour ouvrir une fenêtre Éditeur de boutons sélectionnez la commande dans le menu contextuel Changer l'icône sur un bouton.

https://pandia.ru/text/78/436/images/image018_4.jpg" width="72" height="55 src=">

Graphique 17. Motif sélectionné sur le bouton à modifier

· Cliquez sur le bouton Modifier l'objet sélectionné dans la boîte de dialogue Paramètres.

· Sélectionnez la commande dans le menu contextuel Insérer une icône pour le bouton.

https://pandia.ru/text/78/436/images/image020_3.jpg" width="291" height="312">

Graphique 19. Propriété du bouton Ouvrir

· Entrez le texte souhaité dans le champ Info-bulle.

Vous pouvez placer n'importe quel autre bouton utile sur la barre d'outils que vous créez, pas seulement des boutons pour exécuter des macros. Lorsque vous avez terminé de créer la barre d'outils, vous pouvez la déplacer vers un espace vide en haut de l'écran (ou la placer sur n'importe quel autre bord de l'écran).

Si vous devez créer une barre d'outils pour appeler plusieurs macros, nous vous recommandons de combiner ces macros en un seul groupe (la création d'un groupe de macros a été décrite dans la section précédente). La création d'une telle barre d'outils peut être effectuée à l'aide d'une seule commande Outils, Macro, Créer une barre d'outils à partir d'une macro. Essayez ceci pour l'un des groupes de macros de la base de données "db1", par exemple "Open". À l'aide de la commande spécifiée, une barre d'outils est créée avec des boutons pour appeler chaque macro du groupe, et les noms des macros correspondantes sont affichés sur les boutons. La nouvelle barre d'outils porte le même nom que le nom du groupe de macros. Si vous le souhaitez, vous pouvez remplacer le texte des boutons par des icônes, comme décrit ci-dessus.

2.7. Lier des macros à des événements.

La base de données stocke des informations sur l'état de ses objets. Tout changement dans l'état d'un formulaire ou d'un état est appelé un événement. Chacun de ces objets possède son propre ensemble d'événements.

Il est pratique d'associer des macros à des événements. Essayons de lier la macro que nous avons créée Message en ouvrant la base de données :

· Étiquetez la macro Emplacement de l'écran dans la fenêtre de la base de données.

· Sélectionnez dans le menu Pavkaéquipe Renommer et assignez-le à la macro Message nouveau nom Exécution automatique(une macro portant ce nom est automatiquement exécutée au chargement de la base de données). Vous pouvez utiliser les caractères minuscules et majuscules à votre guise.

La macro est désormais associée à l'ouverture de la base de données. Cela automatise les opérations qui doivent toujours être effectuées lors du chargement de la base de données. Chaque fois que vous ouvrez une base de données, Accesss 2000 vérifie si une macro appelée Exécution automatique, et, s'il est trouvé, l'exécute. Sinon, l'ouverture de la base de données ne s'accompagne pas d'actions supplémentaires. Une seule macro peut être utilisée dans une base de données Exécution automatique.

· Pour vérifier si la macro fonctionne, fermez puis ouvrez la base de données.

Si le nom Exécution automatique affecté à un macrogroupe, alors à l'ouverture de la base de données, seule la première macro de ce groupe sera exécutée ! Pour exécuter plusieurs macros séquentiellement lors du chargement de la base de données, entrez dans la macro Exécution automatique macro-commande Exécutez une macro, qui permettra d'exécuter une macro avec un nom arbitraire (le nom est spécifié en argument) et de revenir à la suivante Exécuter une macro macro en macro Exécution automatique.

MacroExécution automatique non exécuté si avant l'ouverture Base de données appuyez et maintenez la touche .

2.8. Lier une macro à un bouton

Il est logique de créer des contrôles (tels que des boutons) pour appeler des macros. Cela simplifie et accélère grandement leur accès. Un bon endroit pour placer ces éléments est dans le titre ou la note du formulaire.

À titre d'exercice, essayons d'associer une macro à un bouton qui marque l'entrée active du formulaire et la copie dans le presse-papiers :

· Créer une macro Copie, composé des macro-commandes suivantes :

Argument macro

Exécuter la commande Sélectionner un enregistrement

Exécutez la commande de copie

· Enregistrez la macro et fermez sa fenêtre.

· Ouvrir le formulaire Changer et activez le mode conception.

· Appelez la commande De gauche à droite dans le menu Fenêtre.

· Étiquetez la macro Copier une entrée dans la fenêtre Base de données et faites-le glisser vers la zone de titre du projet de formulaire.

Graphique 20. Faites glisser une macro de la fenêtre de la base de données vers la zone de titre d'un projet de formulaire

Dès que vous relâchez le bouton de la souris, la position du bouton de la macro sera corrigée. Si nécessaire, sa taille peut être modifiée à l'aide de manipulateurs spéciaux. Le bouton est déplacé à l'aide du manipulateur situé dans le coin supérieur gauche du cadre de marquage.

Le nom de la macro apparaît automatiquement à l'intérieur du bouton. S'il est trop long, la taille du bouton doit être augmentée. Pour garantir que l'intégralité de l'étiquette du bouton est visible, vous pouvez réduire la taille de la police ou créer une étiquette différente du nom de la macro. L'édition de l'inscription s'effectue après avoir cliqué sur le bouton. Pour quitter le mode édition, cliquez simplement à l’extérieur du bouton.

Pour modifier les paramètres des éléments de contrôle Bouton Vous devez double-cliquer dessus, ce qui ouvrira la fenêtre des propriétés si elle n'était pas à l'écran auparavant.

Graphique 21. Fenêtre des propriétés du bouton

Chaque contrôle possède sa propre liste d'événements disponibles. Toutefois, les actions contraignantes sont toujours les mêmes. Par exemple, pour associer une macro au mouvement de la souris sur un formulaire, vous devez double-cliquer en mode création dans une zone libre en dehors de la note du formulaire et définir l'événement sur Déplacer le pointeur le nom de la macro à lier.

2.9. Lancement et gestion des applications

À l'aide d'une macro, vous pouvez exécuter des applications Microsoft Office 2000 à partir d'Access 2000, ainsi que des programmes exécutés sous Windows 98, Windows NT ou DOS (par exemple, pour effectuer certains calculs à l'aide d'Excel 2000 ou prendre de courtes notes à l'aide du Bloc-notes et de Word 2000). éditeurs). L'appel s'effectue de la même manière dans tous les cas et consiste principalement à préciser le nom du programme à lancer. Une macro d'appel d'un programme d'application peut être associée à un bouton de formulaire, accélérant ainsi l'accès à l'application souhaitée :

· Créez une nouvelle macro. Sur la première ligne, entrez la commande macro LancementApplication.

Graphique 22. Création d'une macro " Lancer l'application

· Comme valeur d'argument Ligne de commande saisissez le nom du programme à lancer, par exemple WinWord.

Figure 23. Ligne de commande avec l'argument de lancement du programme WinWord

· Enregistrez la macro sous le nom Remarques.

Figure 24. Saisir un nom de macro

· Ouvrir le formulaire Changer en mode Création et faites glisser la macro de la fenêtre Base de données vers la zone de titre du formulaire.

https://pandia.ru/text/78/436/images/image027_2.jpg" width="600 hauteur=409" hauteur="409">

Figure 26. Fenêtre de l'éditeur de texte Mot

Lors de l'appel d'un programme, la spécification complète de son fichier est toujours donnée. Dans ce cas, vous ne devez pas saisir de poste. Le répertoire dans lequel le fichier est stocké ne doit être spécifié que s'il n'est pas spécifié par la commande PATH dans le fichier AUTOEXEC. CHAUVE SOURIS. Par exemple:

C:\Programmes\NC\nc

En règle générale, lorsque vous appelez des applications fournies avec Windows 98, vous spécifiez le dossier Windows dans la commande PATH. Par conséquent, le nom de l'éditeur dans cette macro est donné sans spécifier le répertoire.

Assurez-vous que l'éditeur est correctement fermé après la fin de la session de travail.

2.10.

Exécution de programmes d'application à l'aide d'une macro Lancer l'application, Vous pouvez spécifier les commutateurs qui sont généralement saisis sur la ligne de commande après le nom du programme lors du démarrage à partir du niveau DOS. Ces touches permettent de paramétrer le mode de fonctionnement du programme application. Si par exemple l'éditeur Word 2000 est lancé depuis une macro, alors le paramètre /t Nom du document utilisé pour charger un document avec le nom spécifié, qui est utilisé comme modèle. Clé / n spécifié lors du démarrage de Word 2000 sans ouvrir un nouveau document. Méthode de spécification des clés dans un argument Ligne de commande la même chose que sur la ligne de commande DOS :

C:\ProgrammeFichiers\Microsoft Office\0ffice\winword. exe /n

L'utilisation de clés est autorisée lors du démarrage de la plupart des programmes d'application.

Revenons à la macro développée pour appeler l'éditeur Word 2000 et modifions-la légèrement. A chaque appel de l'éditeur, il est conseillé d'utiliser le même document pour les notes (par défaut, chaque appel à Word 2000 s'accompagne de l'ouverture d'un nouveau document).

· Allez dans la fenêtre Word 2000 et insérez les champs dans la première ligne du document Date Et Temps.

Graphique 27. Saisir la date et l'heure dans un éditeur de texte Mot

· Enregistrez le document Word 2000 sous Remarques dans le dossier Mes documents sans spécifier l'extension du document et fermez la fenêtre Word 2000.

· Étiquetez la macro Remarques dans la fenêtre de la base de données et activez le mode conception.

Graphique 28. Mode conception pour une macro » Remarques"

· Attribuer à l'argument Ligne de commande signification Remarques WinWord et enregistrez la macro.

Graphique 29. Saisie d'un argument dans les notes de ligne de commande WinWord

A chaque nouvel appel à l'éditeur, des notes sont inscrites dans le document

date et heure du système - ainsi le contenu est automatiquement enregistré.

Conclusion

Dans ma thèse, j'ai exploré les capacités du SGBD Access 2000 pour créer des macros. Une macro dans Access est une structure composée d'une ou plusieurs commandes de macro exécutées séquentiellement ou dans un ordre spécifié par certaines conditions. L'ensemble des commandes de macro dans Access est très large ; à l'aide de macros, vous pouvez implémenter une grande partie de ce qu'une procédure dans VBA peut faire. Chaque macro a un nom spécifique et éventuellement un ou plusieurs arguments spécifiés par l'utilisateur.

Exercice

1. Introduction

2. Partie principale

2.1. Création de macros

2.2. Création de groupes de macros

2.3. Création d'une macro à partir de la fenêtre Macro Designer

2.4. Exécuter une macro à partir de la fenêtre Base de données

2.5. Exécuter une macro à l'aide d'un bouton de la barre d'outils

2.6. Requête en vue tableau

2.7. Lier des macros à des événements

2.8. Lier une macro à un bouton

2.9. Lancement et gestion des applications

2.10. Exécuter des applications avec des paramètres

3. Conclusion

4. Application

5. Bibliographie

Bibliographie

1. I. Kharitonova, V. Mikheeva, Microsoft Access 2000 dans l'original.

2. V. Pasko, Pour les utilisateurs de PC, une version russifiée d'Access 97.

Qu'est-ce qu'une macro ?

Une macro est un outil permettant d'automatiser des tâches et d'ajouter des fonctionnalités aux formulaires, rapports et contrôles. Par exemple, lors de l'ajout d'un bouton de commande à un formulaire, l'événement bouton Sur clic est associé à une macro qui contient des commandes qui sont exécutées à chaque pression sur le bouton.

Dans Access, les macros peuvent être considérées comme un langage de programmation simplifié dans lequel un programme est écrit sous forme de liste à exécuter. Lors de la création d'une macro, chaque commande de macro est sélectionnée dans une liste déroulante puis les informations nécessaires y sont ajoutées. Les macros vous permettent d'ajouter des fonctionnalités aux formulaires, rapports et contrôles sans avoir à écrire de code dans un module. Les macros fournissent certaines des commandes disponibles dans VBA et, pour la plupart des utilisateurs, créer une macro est plus facile que d'écrire du code VBA.

Supposons que vous souhaitiez générer un rapport directement à partir d'un formulaire de saisie de données. Vous pouvez ajouter un bouton à un formulaire, puis créer une macro qui exécute le rapport. Une macro peut être isolée (un objet distinct dans la base de données), qui est ensuite associée à un événement Sur clic pour un bouton, ou il peut être injecté directement dans l'événement du bouton Sur clic est une nouvelle fonctionnalité d'Office Access 2007. Dans les deux cas, lorsque vous cliquez sur le bouton, une macro est exécutée pour exécuter le rapport.

Une macro est créée à l'aide du Macro Builder illustré dans la figure suivante.

Pour afficher le générateur de macros

Comprendre les macros

Le terme « macro » est souvent utilisé pour désigner des objets macro isolés (c'est-à-dire des objets qui apparaissent dans le volet de navigation sous Macro), mais en fait, un objet macro peut contenir plusieurs macros. Dans ce cas, on l'appelle groupe de macros. Un groupe de macros apparaît comme un objet unique dans la barre de navigation, bien qu'il contienne en réalité plusieurs macros. Bien entendu, chaque macro peut être créée en tant qu'objet macro distinct, mais il est souvent judicieux de regrouper plusieurs macros liées en un seul objet macro. Nom dans la colonne Nom de la macro identifie chaque macro.

Une macro se compose de commandes de macro individuelles. La plupart des macros nécessitent un ou plusieurs arguments. Chaque macro d'un groupe peut recevoir un nom et des conditions peuvent être ajoutées pour contrôler l'exécution de chaque macro. La section suivante traite chacune de ces fonctionnalités en détail.

Noms de macros

Si un objet macro ne contient qu’une seule macro, le nom de la macro est redondant. Le nom d'un objet macro peut être utilisé pour une macro. Cependant, dans le cas d'un groupe de macros, vous devez donner à chaque macro un nom unique. Si colonne Nom de la macro n'apparaît pas dans le générateur de macro, cliquez sur le bouton Noms de macros en groupe Afficher sur l'onglet Constructeur. Pour plus d’informations sur l’exécution de macros dans un groupe, voir plus loin dans cet article.

Arguments

Un argument est une valeur qui fournit les informations nécessaires à une macro, telles que la ligne qui doit être affichée dans la boîte de message, le contrôle sur lequel agir, etc. Certains arguments sont requis, d'autres ne le sont pas. Les arguments sont affichés dans la zone Arguments de macro en bas de la fenêtre Macro Builder.

Macro Builder dans Office Access 2007 comporte une colonne Arguments, qui vous permet de visualiser (mais pas de modifier) ​​les arguments de la macro sur la ligne de macro. Cela rend la macro plus facile à lire, puisque vous n'avez plus besoin de sélectionner chaque commande de macro pour voir ses arguments. Pour afficher une colonne Arguments, appuie sur le bouton Arguments en groupe Afficher sur l'onglet Constructeur.

Conditions

Une condition spécifie les exigences qui doivent être remplies pour que la macro soit exécutée. Vous pouvez utiliser n'importe quelle valeur qui donne les valeurs « Vrai » ou « Faux » ou « Oui » ou « Non ». Si l’expression est évaluée à False, No ou 0 (zéro), la macro ne sera pas exécutée. Pour toute autre valeur de l'expression, la macro sera exécutée.

Une condition peut contrôler plusieurs macros si la colonne Condition entrez des points de suspension (...) pour chaque commande de macro suivante à laquelle cette condition s'appliquera. Si l’expression est évaluée à False, No ou 0 (zéro), aucune des macros ne sera exécutée. Pour toute autre valeur de l'expression, toutes les commandes macro seront exécutées.

Pour afficher une colonne dans le Macro Builder Conditions sur l'onglet Constructeur en groupe Afficher cliquez sur le bouton Conditions

Expression utilisée comme condition Condition dans laquelle une macro est exécutée
[Ville]="Paris" Le champ Ville du formulaire à partir duquel la macro est exécutée est défini sur Paris.
DCount("[CodeCommande]", "Commandes")>35 Le nombre d'enregistrements dans le champ « Code de commande » de la table « Commandes » dépasse 35.
DCount("*", "Ordered", "[OrderCode]=Forms![OrderCode]![OrderCode]")>3 La table « Commandé » contient plus de 3 enregistrements pour lesquels le champ « Code de commande » de la table correspond au champ « Code de commande » du formulaire « Code de commande ».
[Date d'exécution] Entre le #2-Feb-2006# et le #2-Mar-2006# La valeur du champ "Date d'exécution" dans le formulaire à partir duquel la macro est exécutée se situe dans l'intervalle du 2 février 2006 au 2 mars 2006.
Formulaires![Produits]![En stock]<5 La valeur du champ « En stock » du formulaire « Produits » est inférieure à 5.
EstNull([Nom]) Le champ "Nom" du formulaire à partir duquel la macro est exécutée a la valeur (vide). Cette expression est équivalente à : [Nom] Est Null.
[Pays]="Royaume-Uni" et formulaires ![Montants des ventes] ![Total des commandes]>100 Le champ Pays du formulaire à partir duquel la macro est exécutée est défini sur Royaume-Uni et le champ Total des commandes du formulaire Montant des ventes est supérieur à 100.
[Pays] Dans ("France", "Italie", "Espagne") Et Len([Index])<>5 Le champ "Pays" du formulaire à partir duquel la macro est exécutée est défini sur "France", "Italie" ou "Espagne", et le code postal ne comporte pas 5 caractères.
MsgBox("Confirmer les modifications ?",1)=1 Bouton enfoncé D'ACCORD dans la boîte de dialogue dans laquelle la fonction Boîte de message affiche le texte « Confirmer les modifications ? ». Si le bouton est enfoncé dans la boîte de dialogue Annuler cette macro sera ignorée.
!=2 La variable temporaire utilisée pour stocker le résultat de la boîte de message est 2 (vbCancel=2).

Conseil. Pour qu’Access ignore temporairement la macro, entrez la condition comme False. Ignorer temporairement une macro peut être utilisé lors de la recherche d'erreurs dans une macro.

Macro

Les commandes de macro sont les éléments les plus simples à partir desquels une macro est construite. Access propose une large sélection de commandes macro qui vous permettent d’effectuer diverses actions. Par exemple, les utilisations les plus courantes des macros consistent à ouvrir un rapport, à rechercher un enregistrement, à afficher une boîte de message ou à appliquer un filtre à un formulaire ou un rapport.

Nouveautés des macros dans Office Access 2007

Dans les versions précédentes d’Access, les fonctions les plus couramment utilisées nécessitaient l’écriture de code VBA. Office Access 2007 inclut de nouvelles fonctionnalités et macros qui permettent d'éviter que cela ne se produise. Ils rendent le processus d'ajout de fonctionnalités à la base de données plus facile et plus fiable.

Créer une macro

Dans Office Access 2007, une macro ou un groupe de macros peut être encapsulé dans un objet macro (parfois appelé macro en bac à sable), ou une macro peut être incorporée dans n'importe quelle propriété d'événement d'un formulaire, d'un état ou d'un contrôle. Les macros incorporées font partie de l'objet ou du contrôle dans lequel elles sont incorporées. Les macros isolées apparaissent dans le volet de navigation sous Macro, par opposition aux intégrés.

Fonctions du générateur de macros

Le Macro Builder est utilisé pour créer et modifier des macros. Il s'ouvre comme suit.

Access ouvre le générateur de macros.

Le Macro Builder est utilisé pour créer une liste de commandes de macro qui doivent être exécutées lors de l'exécution de la macro. Lorsque vous ouvrez Macro Builder pour la première fois, les colonnes sont affichées Commande macro, Arguments Et Note.

Dans la zone Arguments de macro Les arguments de chaque macro sont saisis ou modifiés si nécessaire. Le champ de description affiche une brève description de chaque macro et argument. Pour afficher une description, cliquez sur une macro ou un argument.

Le tableau suivant présente les commandes disponibles sur l'onglet Constructeur dans le constructeur de macros.

Groupe Équipe Description
Service Exécuter Exécute les commandes de macro répertoriées dans la macro.
Pas à pas Activation du mode d'exécution de macro étape par étape. Lors de l'exécution d'une macro dans ce mode, chaque commande de macro est exécutée à tour de rôle. Une fois chaque commande de macro terminée, une boîte de dialogue s'affiche Exécution pas à pas d'une macro. Pour passer à la macro suivante, cliquez sur le bouton dans cette boîte de dialogue Étape. Cliquez sur le bouton Arrêtez toutes les macros pour arrêter l'exécution de cette macro et de toutes les autres. Cliquez sur le bouton Plus loin pour quitter le mode étape et exécuter les commandes macro restantes sans s'arrêter.
Constructeur Ce bouton est activé lorsque vous entrez un argument de macro contenant une expression. Cliquez sur le bouton Constructeur pour ouvrir la boîte de dialogue Générateur d'expressions, dans lequel vous pouvez créer une expression.
Cordes Insérer des lignes Ajoute une ou plusieurs lignes de macro vides au-dessus des lignes sélectionnées.
Supprimer des lignes Supprime les chaînes de macro sélectionnées.
Afficher Afficher toutes les macros

Afficher plus ou moins de macros dans une liste déroulante Commande macro.

  • Pour afficher une liste plus longue de commandes macro, cliquez sur le bouton Afficher toutes les macros. Si la liste complète des macros est sélectionnée, le bouton Afficher toutes les macros Souligné. Si vous sélectionnez une macro dans une liste complète, vous devrez peut-être accorder explicitement à la base de données un état approuvé avant de l'exécuter.
  • Pour afficher une courte liste incluant uniquement les macros pouvant être utilisées sur une base de données qui n'est pas dans un état approuvé, cliquez sur Afficher toutes les macros ne doit pas être souligné.

Conseil. Si le bouton Afficher toutes les macros sélectionné, désélectionnez-le en cliquant sur ce bouton.

Si le bouton Afficher toutes les macros n'est pas mis en évidence, une courte liste de commandes macro pour une base de données fiable est disponible.

Noms de macros Nom de la macro. Les noms de macro sont obligatoires dans un groupe pour différencier les macros individuelles, sinon ils sont facultatifs. Pour plus d’informations, consultez Créer un groupe de macros plus loin dans cet article.
Conditions Afficher ou masquer une colonne Condition. Utilisez cette colonne pour saisir des expressions qui définissent les conditions d'exécution de la macro.
Arguments Afficher ou masquer une colonne Arguments. Cette colonne affiche les arguments de chaque macro, ce qui facilite la visualisation de la macro. Si colonne Arguments ne s'affiche pas, il faut cliquer sur chaque macro et regarder les arguments dans la section Arguments de macro. Saisir des arguments dans une colonne Arguments impossible.

Création d'une macro isolée

  1. Ajoutez une commande de macro à votre macro.
  • Dans Macro Builder, cliquez sur la première cellule vide de la colonne Commande macro.
  • Tapez la macro souhaitée ou cliquez sur la flèche pour développer et sélectionnez la macro souhaitée.
  • Au chapitre Arguments de macro Si nécessaire, fournissez des arguments à la macro. Cliquez sur un champ d'argument pour voir une brève description à droite de l'argument.
  • Pour les valeurs qui servent de noms, vous pouvez définir la valeur en faisant glisser un objet du volet de navigation vers le champ d'argument. Nom de l'objet.
  • Vous pouvez également créer une macro en faisant glisser un objet de base de données du volet de navigation vers une ligne vide dans Macro Builder. Lorsque vous faites glisser une table, une requête, un formulaire, un rapport ou un module, une action de macro est ajoutée au Générateur de macros qui ouvre la table, la requête, le formulaire ou le rapport. Lorsque vous faites glisser une macro dans Macro Builder, une commande de macro est ajoutée pour exécuter la macro.
  1. Pour ajouter la commande de macro suivante à une macro, accédez à une autre commande de macro et répétez l’étape 2. Access exécute les commandes de macro dans l’ordre dans lequel elles sont répertoriées.

Création d'un groupe de macros

Pour regrouper plusieurs macros associées dans un seul objet macro, vous pouvez créer un groupe de macros.

Le générateur de macros s'ouvrira.

Note. Les noms de macro sont requis dans un groupe pour différencier les macros individuelles. Le nom de la macro apparaît sur la même ligne que la première commande de macro dans la macro. La colonne du nom de la macro reste vide pour toutes les commandes de macro ultérieures de cette macro. La macro se termine lorsque vous entrez le nom de macro suivant dans cette colonne.

  1. En colonne Nom de la macro entrez le nom de la première macro du groupe.
  2. Ajoutez des commandes de macro à exécuter dans la première macro.
  • En colonne Commande macro Cliquez sur la flèche pour développer la liste des macros.
  • Sélectionnez la macro que vous souhaitez ajouter.
  • Au chapitre Arguments de macro fournissez des arguments de macro si nécessaire. Cliquez sur un champ d'argument pour voir une brève description à droite de l'argument.
  • Pour les arguments de macro dont les paramètres sont les noms d'objets de base de données, vous pouvez spécifier l'argument en faisant glisser l'objet du volet de navigation vers le champ d'argument. Nom de l'objet.
  • Vous pouvez également créer une macro en faisant glisser un objet de base de données du volet de navigation vers une ligne vide dans Macro Builder. Lorsque vous faites glisser une table, une requête, un formulaire, un rapport ou un module dans le Générateur de macros, une action de macro est ajoutée qui ouvre la table, la requête, le formulaire ou le rapport. Lorsque vous faites glisser une macro dans Macro Builder, une commande de macro est ajoutée pour exécuter la macro.
  • Si nécessaire, saisissez des notes pour la macro.
  1. Passer à la prochaine ligne vide de la colonne Nom de la macro et entrez le nom de la prochaine macro du groupe.
  2. Ajoutez des commandes de macro à exécuter dans cette macro.
  3. Répétez les étapes 5 et 6 pour chaque macro du groupe.

Remarques

MacroGroupName.MacroName

Par exemple, le nom « Buttons.Products » fait référence à la macro « Products » du groupe de macros « Buttons ». Dans une liste de macros, par exemple dans la liste d'arguments "Nom de la macro" pour une commande de macro ExécuterMacro, la macro « Produits » s'affichera sous la forme « Boutons.Produits ».

Création d'une macro intégrée

Les macros incorporées diffèrent des macros isolées dans la mesure où elles sont stockées dans les propriétés d'événement des formulaires, des états ou des contrôles. Ils n'apparaissent pas comme objets dans la section Macro dans le domaine des transitions. Cela facilite la gestion de la base de données car vous n'avez plus besoin de suivre les objets macro individuels contenant des macros pour un formulaire ou un état. Utilisez la procédure suivante pour créer une macro intégrée.

Note. Les macros intégrées ne peuvent pas être converties en modules Visual Basic pour Applications (VBA) à l'aide d'un outil du groupe Macro sur l'onglet Outils de base de données. Si vous envisagez de convertir éventuellement la macro en modules VBA, créez une macro autonome plutôt qu'une macro intégrée. Dans ce cas, vous pouvez utiliser l'outil Conversion de macros en modules Visual Basic pour convertir des macros en VBA.

Pour sélectionner l'intégralité du formulaire ou du rapport, sélectionnez Rapport dans la liste déroulante en haut de la page des propriétés.

La macro sera exécutée à chaque fois que l'événement se produit.

Note. Access vous permet de créer un groupe de macros en tant que macro intégrée. Cependant, lorsqu'un événement se produit, seule la première macro du groupe est exécutée. Les autres macros sont ignorées sauf si elles sont appelées depuis la macro intégrée elle-même (par exemple, par la commande macro SurErreur).

Exemple. Implémentation d'une macro dans l'événement de rapport « Données manquantes »

Lorsque vous exécutez un rapport, s'il n'y a aucun enregistrement dans la source de données, une page de rapport vierge s'affiche, c'est-à-dire une page ne contenant aucune donnée. Il est parfois préférable d'afficher une boîte de message au lieu d'une page blanche. La solution idéale dans cette situation consiste à utiliser une macro intégrée.

  1. Notez que dans le tableau précédent les arguments sont présentés tels qu'ils apparaissent dans la colonne Arguments. En fait, ils sont présentés dans la section Arguments de macro, comme le montre le tableau suivant.
  1. Cliquez sur le bouton Fermer.

Le Macro Builder sera fermé et l'événement se déroulera Données manquantes un message s'affichera [Macro intégrée].

  1. Enregistrez et fermez le rapport.

Si aucun enregistrement n'est trouvé la prochaine fois que vous exécuterez le rapport, une boîte de message apparaît. Lorsque vous cliquez sur le bouton dans cette fenêtre D'ACCORD le rapport sera annulé sans afficher de page blanche.

Création de macros dansAccéder 2007

Une macro est un ensemble de commandes de macro créées pour automatiser les tâches fréquemment effectuées.

Constructeur de macros

Les macros sont créées dans la fenêtre Macro Constructor spécialement conçue à cet effet. Pour créer une macro, vous devez sélectionner l'onglet Créer et dans le bouton déroulant Macro sélectionner une équipe Macro . Une fenêtre de conception de macros s'ouvrira, composée d'un panneau de description situé en haut de la fenêtre et d'un panneau d'arguments en bas. Le panneau de description par défaut contient trois colonnes Commande macro , Arguments Et Note .

Dans le champ Commande Macro, vous pouvez sélectionner la commande requise (OpenTable, OpenQuery, OpenReport, RunMacro, etc.) en cliquant sur le bouton de la souris. Sinon en ligne Commande macro vous pouvez simplement glisser et déposer n'importe quel objet de base de données (table, formulaire, etc.).

Après avoir sélectionné une macro-commande, des lignes peuvent apparaître dans le panneau des arguments de la fenêtre du concepteur de macro pour définir les valeurs des arguments de la macro-commande correspondante. L'ensemble des lignes de ce panneau dépend de la macro spécifique. Les valeurs d'argument spécifiées apparaissent également dans la deuxième colonne Arguments panneaux de description.

Colonne Note sert à saisir un commentaire décrivant l'action en cours.

Examinons un moyen simple de créer une macro. Par exemple, développons-le pour ouvrir une table Groupes Base de données Étudiant .

    Vous avez déjà ouvert la fenêtre Constructeur de macros . Utilisez maintenant votre souris pour faire glisser le tableau Groupes depuis Zones de transition à la colonne Commande macro . En conséquence, la commande macro Ouvrir la table y apparaîtra et Access remplira automatiquement les champs du panneau d'arguments (Fig. 1).

    Dans le champ Mode données, définissez la valeur Seule la lecture , ce qui rendra les entrées de ce tableau indisponibles pour la modification.

Pour saisir la valeur d'un argument de commande de macro, vous pouvez sélectionner l'argument dans la liste ou saisir une expression dans son champ. À droite des champs de certains arguments se trouve un bouton constructeur, dans la fenêtre duquel diverses expressions sont saisies. L'expression doit être précédée d'un signe égal (=), à l'exception de l'argument Expression macro Définir la valeur et argumentation Nombre de répétitions macro Exécuter une macro .

Une macro peut contenir plusieurs commandes de macro exécutées séquentiellement. Ajoutons à la macro-commande que nous avons créée, qui ouvre la table Groupes en mode lecture seule, ajoutons une macro-commande qui informe l'utilisateur que la table Marchandises disponible uniquement pour consulter des informations.

Séquence d'exécution :

    Allez à la ligne suivante de la fenêtre Macro Designer et dans la colonne Commande macro sélectionner une macro Message .

    Sur le terrain Message dans la barre d'argument entrez le texte " Données disponible seulement Pour visualisation " Argument Signal sert à déterminer si la sortie du message sera accompagnée d'un signal sonore. En argumentation Taper sélectionnez le type de boîte de dialogue. Précisez par exemple la valeur Avertissement !. Dans le champ argumentaire Titre pour définir le texte du titre de la boîte de message, saisissez le texte "À propos des données" .

    Enregistrez la macro sous Groupes ouverts .

Après avoir exécuté la macro, la table Groupes s'ouvre en mode affichage et le message illustré sur la figure 2 s'affichera.

Regardons un autre exemple. Disons que vous devez créer une macro qui ouvre un formulaire Liste .

    Ouvrez la fenêtre du concepteur de macros et faites-y glisser le formulaire de la fenêtre de la base de données. Liste .

    Argument Nom de forme contient une liste de tous les formulaires de base de données.

    Argument Mode définit le mode dans lequel le formulaire doit être ouvert. Il peut prendre les valeurs suivantes : Form, Designer, View, Table, etc.

    Argument Nom du filtre utilisé pour sélectionner et/ou trier les enregistrements dans un formulaire. Il peut s'agir d'une requête ou d'un filtre écrit sous forme de requête.

    Argument Condition de sélection définit la condition de sélection des enregistrements affichés dans le formulaire. La condition est une expression.

    Argument Mode données définit la manière de travailler avec les données et peut prendre l'une des valeurs : Ajouter, Modifier ou Lecture seule.

    Argument Mode fenêtre définit le type de fenêtre : Normale, Invisible, Icône et Fenêtre de dialogue.

    Sur le terrain Nom filtre en utilisant le filtre créé précédemment SR-11 , entrez du texte SR-11 .

    Sur la nouvelle ligne de macro, sélectionnez la macro Message , et dans la barre d'argument, saisissez le texte du message : Groupe de filtrage 11 . Définissez le type de boîte de dialogue de message en sélectionnant Informatif argument Taper .

    Enregistrez la macro sous 11 groupe .

Compter le nombre d'enregistrements dans l'ensemble du rapport

1.Ouvrez le rapport en mode conception.

2.Ajoutez un champ calculé à la note du rapport.

3.Pour ouvrir la fenêtre Propriétés, assurez-vous que le champ souhaité est sélectionné et cliquez sur le bouton Propriétés de la barre d'outils.

4. Saisissez l'expression =Count(*) dans la cellule de propriété Données du champ calculé. Cette expression utilise la fonction Count pour compter tous les enregistrements d'un rapport, y compris les enregistrements qui ont des valeurs nulles dans certains champs.

Macro. Macro ou ensemble de macros utilisé pour effectuer automatiquement une opération.

Macro sont un ensemble d'une ou plusieurs macro-commandes qui effectuent des opérations spécifiques, telles que l'ouverture de formulaires ou l'impression de rapports. Les macros peuvent être utiles pour automatiser les tâches fréquemment effectuées.

L'utilisation de formulaires et de rapports est grandement facilitée par l'utilisation de macro-commandes. Microsoft Access fournit plus de 40 commandes de macro que vous pouvez inclure dans vos macros. Les macros effectuent des actions telles que l'ouverture de tables et de formulaires, l'exécution de requêtes, l'exécution d'autres macros, la sélection d'éléments de menu, le redimensionnement de fenêtres ouvertes, etc. Avec leur aide, vous pouvez même lancer d'autres applications prenant en charge l'échange dynamique de données (DDE), telles que Microsoft Excel. , et échangez des données entre votre base de données et d'autres applications. Les commandes de macro peuvent être combinées en une macro et les conditions de leur exécution peuvent être spécifiées.

Microsoft Access fournit différents types de macros qui vous permettent d'automatiser votre application. Vous pouvez utiliser des macros pour effectuer les opérations suivantes :

Ouvrez une table, une requête, un formulaire ou un rapport dans n'importe quel mode disponible.

À l'aide de macros, vous pouvez fermer une table ouverte, une requête,

formulaire ou rapport ;

Ouverture d'un rapport en mode aperçu ou sortie directe sur une imprimante. Vous pouvez générer des données de rapport dans un fichier texte enrichi (.rtf), texte brut (.txt) ou Microsoft Excel (.xls), puis l'ouvrir dans Microsoft Word, le Bloc-notes Windows ou Microsoft Excel ;

Exécuter une demande de sélection ou une demande de modification. Où

les paramètres de requête peuvent utiliser des valeurs de contrôle

tout formulaire ouvert ;

Effectuer des actions basées sur des valeurs dans une base de données, un formulaire ou

rapport. Les macros peuvent exécuter d'autres macros et appeler des fonctions

VBA. Vous pouvez interrompre l'exécution de la macro en cours ou de toutes

macros, annuler l'événement qui a déclenché la macro, ou même quitter

applications;

Définit la valeur de tout contrôle de formulaire ou de rapport. Vous pouvez émuler le travail avec un clavier et transférer les données saisies à partir du clavier vers les fenêtres de dialogue système. À l'aide de macros, vous pouvez mettre à jour les valeurs de n'importe quel contrôle dont la source de données est une requête ;



Appliquez un filtre, accédez à n'importe quel enregistrement et recherchez des données dans la requête de table ou de formulaire sous-jacente ;

Définitions d'une barre de menu spéciale qui remplace la barre de menu standard. Vous pouvez rendre un élément de menu spécial disponible ou indisponible, y compris un élément de menu contextuel, le décocher ou le marquer. De plus, vous pouvez utiliser des macros pour ouvrir ou fermer n'importe quelle barre d'outils standard ou spéciale ;

Exécutez une commande à partir de n’importe quel menu Access ;

Déplacez, redimensionnez, réduisez ou restaurez n’importe quelle fenêtre dans l’espace de travail Access. Vous pouvez donner le focus à n'importe quelle fenêtre ou n'importe quel contrôle de la fenêtre, sélectionner une page de rapport et l'afficher en mode aperçu ;

Affichez des messages d'information et des signaux sonores pour attirer l'attention sur vos messages. Vous pouvez également supprimer certains messages d'avertissement lors des demandes de modification ;

Renommer n'importe quel objet de base de données, copier l'objet sélectionné dans la base de données Access actuelle ou dans une autre. Vous pouvez utiliser des macros pour enregistrer ou supprimer des objets de votre base de données. De plus, les macros vous permettent d'importer, d'exporter ou de lier des tableaux à partir d'autres bases de données, d'importer ou d'exporter des feuilles de calcul et des fichiers texte ;

Lancement d'une application, ainsi qu'échange de données avec l'application à l'aide du mécanisme DDE ou du presse-papiers. Vous pouvez sortir les données d'une table, d'un formulaire, d'une requête ou d'un rapport vers un fichier de sortie et l'ouvrir dans l'application appropriée. Vous pouvez également transmettre une séquence de frappes à une application qui attend une saisie au clavier.

Regardons d'autres capacités macro. Les boutons de commande qui ouvrent et placent des formulaires et définissent les valeurs des champs peuvent vous aider à passer d'une tâche à une autre. Vous pouvez créer des procédures d'édition complexes qui vérifient l'exactitude des données saisies dans le formulaire, y compris la validation des données dans d'autres tableaux.

Création de macros simples

1. Pour commencer à travailler avec les macros, dans la fenêtre de la base de données, faites un clic gauche sur l'onglet Macros, la fenêtre suivante apparaîtra à l'écran :

Onglet sélectionné Macro

Figure 2

3. La partie supérieure de la fenêtre permet de définir la macro, et la partie inférieure permet de saisir les valeurs des arguments des commandes de macro qui y sont incluses. En haut, il y a au moins deux colonnes avec les titres Macro et Note. En cliquant sur les boutons Noms de macro (1) et Conditions (2) dans la barre d'outils, vous pouvez voir les quatre colonnes illustrées dans la figure 3.

figure 3

Notez la zone (4) en bas à droite de la fenêtre macro où

Un court message d'aide s'affiche. Le contenu du message change en fonction de la position du curseur en haut de la fenêtre de la macro (rappelez-vous : vous pouvez toujours appuyer sur F1 pour obtenir une aide contextuelle).

4. La colonne Macro spécifie l'une des 49 commandes de macro fournies

Accéder. Si vous cliquez dans n'importe quelle cellule de la colonne Macro, un bouton (3) avec une flèche vers le bas apparaîtra à l'extrémité droite de la cellule. En cliquant sur ce bouton, vous ouvrez la liste des commandes macro illustrées à la Fig. 4

Par exemple, sélectionnez la commande macro Message dans la liste. Il est utilisé pour ouvrir une boîte de dialogue modale avec un message. C'est un excellent moyen d'afficher différents types de messages d'avertissement ou d'information dans une application sans créer de formulaire spécial à cet effet.

Disons, par exemple, que le message est une salutation. Saisissez le texte dans la cellule appropriée de la colonne Note Invitation. La colonne Note est particulièrement utile pour documenter les macros complexes contenant de nombreuses commandes de macro. Vous pouvez saisir des commentaires supplémentaires dans cette colonne, en les plaçant sur des lignes ne contenant pas de macros.

Après avoir sélectionné une macro telle que Message, Access affiche ses arguments au bas de la fenêtre de la macro.

(Vous pouvez utiliser la touche F6 pour vous déplacer du haut vers le bas de la fenêtre macro et inversement.)

Figure 4

La valeur de l'argument Message est le texte affiché par Access dans la boîte de dialogue, saisissez-y Invitation. L'argument Signal est utilisé pour émettre un signal sonore lorsque la boîte de dialogue apparaît, saisissez Oui. L'argument Type permet de placer une icône dans la fenêtre de message, par exemple un cercle rouge avec un réticule blanc, de choisir parmi les alternatives proposées Informatif. Le texte affiché dans le titre de la boîte de dialogue est renseigné dans la cellule argument Titre (Texte intégral du message : Bienvenue dans la nouvelle base de données.). Ceux. fenêtre de création d'une macro simple à l'aide de la commande macro Le message ressemblera à ceci (Fig. 5.) :

Figure 5

Dans la colonne Commande macro, à l'aide du bouton (6), vous pouvez ajouter une autre ligne pour la commande macro, et à l'aide du bouton (5), vous pouvez supprimer n'importe quelle ligne.

5 Avant de l'exécuter, la macro doit être enregistrée. Sélectionnez Fichier | Enregistrer (ou Fichier | Enregistrer sous/Exporter). Lorsque vous utilisez le fichier | Enregistrer l'accès ouvrira la boîte de dialogue illustrée à la Fig. 6. Entrez votre nom Macro1 et cliquez sur OK pour enregistrer la macro.

6 Certaines macros (comme celle que vous venez de créer) peuvent être exécutées directement depuis la fenêtre de la base de données ou la fenêtre des macros car elles ne dépendent pas des contrôles du formulaire ou de l'état ouvert. Si une macro dépend d'un formulaire ou d'un état, elle doit être associée à l'événement correspondant et exécutée lorsqu'il se produit. Avant d'exécuter une macro, c'est une bonne idée de tester son fonctionnement en exécutant les commandes de la macro étape par étape.

Pour démarrer un test pas à pas, cliquez sur le bouton (7) Pas à pas, puis sur Exécuter (8). Access affichera la boîte de dialogue d'exécution de macro étape par étape, illustrée à la Fig. 7

Figure 6

Figure 7

7 Si vous cliquez sur le bouton Étape (9), la commande macro présentée dans la boîte de dialogue s'exécutera et Access affichera une boîte de dialogue modale avec le message que nous avons créé, illustré dans la figure 8 :

Figure 8

8 Cliquez sur OK pour fermer la fenêtre. Si plusieurs commandes de macro sont définies dans une macro, après la première étape, vous serez renvoyé à la boîte de dialogue Exécution de macro étape par étape, qui affichera la prochaine commande de macro prête à être exécutée. Puisque dans notre cas la macro consiste en une seule commande de macro, Access vous ramènera à la fenêtre de macro (Figure 5). Une fois terminé, appuyez à nouveau sur le bouton (7) étape par étape pour annuler le mode étape. Sinon, vous resterez en mode étape lors de l’exécution d’une macro jusqu’à ce que vous fermiez et redémarriez Access.

Note:

Si vous rencontrez une erreur dans une macro pendant l'exécution de votre application, Access affiche d'abord une boîte de dialogue l'expliquant. Vous verrez alors une boîte de dialogue Erreur d'exécution de macro similaire à Exécution de macro étape par étape avec des informations sur la macro à l'origine de l'erreur. À ce stade, vous pouvez uniquement cliquer sur le bouton Abandonner et modifier la macro pour éliminer la cause de l'erreur.

Macros dans un SGBD Microsoft Access

Lorsque vous travaillez avec une base de données, vous devez souvent effectuer les mêmes tâches. Pour éviter cela, ce processus est automatisé à l'aide de macros. Votre système de gestion de base de données se développe régulièrement à mesure que vous saisissez de nouvelles entrées dans des formulaires, créez des requêtes et imprimez de nouveaux rapports. Parallèlement, vous développez et enregistrez de nouveaux objets pour une utilisation ultérieure - rapports hebdomadaires, demandes de mise à jour mensuelles, etc. Vous devez répéter certaines tâches régulièrement. Par exemple, lorsque vous saisissez des informations sur un nouveau client, vous ouvrez le même formulaire ou écrivez les mêmes lettres standards aux clients en retard sur les comptes annuels.

Pour effectuer de telles tâches, il est plus pratique d'utiliser des macrosAccéder. Une fois que vous avez créé de petits programmes, vous souhaiterez les exécuter automatiquement lorsque certaines actions de l'utilisateur se produisent (comme cliquer sur un bouton ou ouvrir un certain formulaire). Pour exécuter automatiquement des macros dansAccédersoi-disantévénements.

L'essence des macros

Macro Accédervous permettent de répéter automatiquement diverses actions, vous évitant ainsi d'écrire des programmes et des sous-programmes complexes. Par exemple, vous pouvez créer une macro qui recherchera automatiquement dans la base de données des informations sur les clients endettés et saisira ces données dans une lettre de notification de dette standard.

Qu'est-ce qu'une macro

Macro- même objet Accédercomme une table, une requête, un formulaire et un rapport. Il est créé pour effectuer automatiquement certaines actions ou un ensemble d'actions. L'exécution d'une tâche applicative peut être représentée comme le résultat de l'exécution séquentielle d'un certain nombre d'actions, dont chacune peut être écrite par la commande correspondante dans les langagesVisuelBase ou VBA. Vous pouvez également utiliser une macro pour simuler la sélection d'une commande de menu ou le déplacement d'une souris.

Macro Accéderne dupliquez généralement pas les frappes individuelles ou les mouvements de la souris. Ils effectuent des tâches spécifiques spécifiées par l'utilisateur, telles que l'ouverture d'un formulaire ou l'exécution d'un rapport.

Toute commande que vous souhaitez exécuterAccéder, s'appelle une macro.Accéderpropose un choix de 49 commandes de macro que vous pouvez utiliser dans vos macros.

Quand utiliser une macro

En utilisant des macros pour les tâches de routine, vous pouvez gagner du temps. De plus, puisque la même séquence d'actions sera effectuée à chaque fois que vous exécuterez la macro, celle-ci rendra votre travail avec la base de données plus efficace. Les macros peuvent être utilisées pour effectuer les tâches suivantes.

    Lier et exécuter des requêtes et des rapports ensemble.

    Ouverture simultanée de plusieurs formulaires et/ou rapports.

    Contrôle de la saisie des données lors du remplissage des formulaires.

    Déplacement de données entre les tables.

    Effectuez des actions lorsque vous appuyez sur un bouton macro.

Fenêtre Macros

Comme lorsque vous travaillez avec d'autres objetsAccéder, pour créer des macros, une fenêtre spéciale pour construire des macros est utilisée. Pour ouvrir une nouvelle fenêtre de macro, procédez comme suit :

    Dans la fenêtre Base de données, sélectionnez l'ongletMacro .

    Cliquez sur le boutonCréer .

Macro

Lorsque vous ouvrez une nouvelle fenêtre de macro, deux colonnes apparaissent en haut : Macro et Note. Lorsque vous sélectionnez la commande Affichage – Noms de macro ou Affichage – Conditions, deux colonnes supplémentaires apparaissent – ​​Nom de la macro et Condition.

Création de macros

Lors de la création de macros, les deux parties de la fenêtre de macro sont utilisées : Macro et Macro Arguments. Une fois que vous avez sélectionné une macro et défini les arguments appropriés, la macro peut être enregistrée pour une utilisation ultérieure.

Utiliser plusieurs macros dans une seule macro

Vous pouvez saisir autant de commandes de macro individuelles que vous le souhaitez dans une seule macro. Par exemple, vous souhaiterez peut-être une macro qui affiche un sablier à l'écran, puis ouvre deux formulaires différents, puis émet un bip lorsque la macro s'exécute. Pour créer une telle macro, suivez les étapes ci-dessous.

1. Ouvrez une nouvelle fenêtre de macro.

2. Cliquez sur la première cellule vide de la colonne Macro.

3. Sélectionnez la commande macro Hourglass dans la liste.

4. Cliquez sur la cellule de commentaires en face de la commande macro Hourglass saisie.

5. Saisissez le texte Afficher le sablier pendant l'exécution de la macro.

6. Cliquez sur la cellule suivante dans la colonne Macro.

7. Sélectionnez la commande de macro Ouvrir le formulaire dans la liste.

8. Cliquez sur la cellule Nom du formulaire dans la zone Arguments de macro.

9. Sélectionnez le formulaire Ajoutez un client et des animaux de compagnie.

10. Cliquez dans la colonne Notes en face de la macro-commande saisie Ouvrir le formulaire.

11. Entrer Ouvrir le formulaire Ajoutez un client et des animaux de compagnie.

12. Cliquez sur la cellule suivante dans la colonne Macro.

13. Sélectionnez la commande Ouvrir la macro de formulaire dans la liste.

14. Cliquez sur la cellule Nom du formulaire dans la zone Arguments de macro.

15. Sélectionnez le formulaire Ajout des détails de la visite.

16. Cliquez dans la colonne Notes en face du texte saisi.

17. Entrez le formulaire ouvert

18. Cliquez sur la cellule suivante dans la colonne Macro.

19. Sélectionnez la commande macro Signal dans la liste.

Changement ordre des commandes de macro dans une macro

Lorsque vous travaillez avec des macros contenant plusieurs commandes de macro, vous devrez peut-être modifier la séquence d'exécution de commandes de macro individuelles. Par exemple, vous pouvez décider que dans une macro que vous avez créée précédemment, la commande signal doit apparaître au début plutôt qu'à la fin de la macro. Pour modifier l'ordre des commandes de macro dans une macro, procédez comme suit :

    Sélectionnez une macro en cliquant sur la zone de sélection de ligne à gauche du nom de la macro.

    Cliquez à nouveau sur la ligne en surbrillance et faites-la glisser vers la ligne supérieure de la macro.

Enregistrer une macro

Avant de pouvoir exécuter une macro, vous devez la sauvegarder. Une fois enregistrée, la macro devient un objet de base de données que vous pouvez ouvrir ou exécuter à partir de la fenêtre de la base de données. Pour enregistrer une macro, procédez comme suit.

    Sélectionnez la commande Fichier-Enregistrer dans le menu de la fenêtre macro ou cliquez sur le bouton Enregistrer dans la barre d'outils.

    Si la macro n'a pas été enregistrée auparavant, vous devez entrer son nom dans la boîte de dialogue Enregistrer, puis appuyer sur le boutonEntrerou cliquez sur OK.

Modification d'une macro existante

Une fois créée, la macro peut être modifiée. Pour faire ça, suit les étapes suivantes.

    Dans la fenêtre Base de données, sélectionnez l'onglet Macros.

    Sélectionnez la macro que vous souhaitez modifier.

    Cliquez sur le bouton Conception.

Copie de macros

Pour copier une macro, procédez comme suit :

    Sélectionnez l'onglet Macros dans la fenêtre Base de données.

    Sélectionnez la macro que vous souhaitez copier.

    Appuyez sur la combinaison de touchesCtrl + Cou sélectionnez Modifier - Copier pour copier la macro dans le presse-papiers.

    Cliquez sur Ctrl + Vou sélectionnez Modifier – Coller pour coller la macro depuis le presse-papiers.

    Dans la boîte de dialogue Insérer, entrez un nom pour la nouvelle macro.

Renommer macro

Parfois, une macro doit être renommée, par exemple si vous modifiez les propriétés d'un événement sur un formulaire ou un état. Pour faire ça, suit les étapes suivantes.

    Sélectionnez l'onglet Macros dans la fenêtre Base de données.

    Sélectionnez la macro que vous souhaitez renommer.

    Sélectionnez Modifier – Renommer ou cliquez avec le bouton droit et sélectionnez Renommer dans le menu qui apparaît.

    Entrez un nouveau nom.

Exécuter des macros

Une fois créée, la macro peut être exécutée depuis :

    Fenêtres macros,

    Fenêtres de base de données

    Autres fenêtres de base de données,

    Autres macros.

Exécuter une macro à partir de la fenêtre Macros

Vous pouvez exécuter une macro directement à partir de la fenêtre Macros en cliquant sur le bouton Exécuter ou en utilisant la commande Exécuter.

Exécuter des macros à partir de la fenêtre Base de données

Pour exécuter des macros à partir de la fenêtre de la base de données, procédez comme suit :

    Sélectionnez l'onglet Macros dans la fenêtre Base de données.

    Mettez en surbrillance la macro que vous souhaitez exécuter.

    Double-cliquez sur le nom de cette macro ou cliquez sur le bouton Exécuter.