Nouveauté Access 2010 : Editeur de Macros

Morgan BILLY

Vous pouvez commenter et donner une note à cet article : Commentez

Nous voici à l'aube de la sortie d'Office 2010, la future mouture de la suite bureautique de Microsoft. Je vais vous présenter les premières images du Technical Prewiew, pour nouveauté l'éditeur de Macros d'Access.

- Titre : Nouveauté Access 2010 : Editeur de Macros

- Auteur : Morgan BILLY

- Parution : 15 août 2009

- Mise à jour : 15 mai 2012

- Public visé :

- Licence : Copyright ® 2012 Morgan BILLY. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- I. Introduction

- II. Création d'un Formulaire

- III. Editeur de Macros

- IV. Résultat du test

- V. Conversion de Macro en VBA

- VI. Créer un macro Autoexec

- VII. Remerciements

I - Introduction

Je vais vous présenter une nouveauté d'Access 2010 : le nouvel éditeur de Macros.
Cet éditeur a subi un énorme changement, des fonctions ont été ouvertes afin de simplifier la création de macros.
Le changement est radical, la création de la macro ressemble à du codage dans l'éditeur VBE, mais en beaucoup plus simple. La fonctionnalité de conversion entre macro et VBA a été gardée et est plus accessible.
Nous allons montrer par l'exemple cette nouvelle fonctionnalité.

II - Création d'un Formulaire

Nous allons créer un nouveau formulaire ayant un champ de saisie et un bouton. Lors du clic sur le bouton nous allons faire un test depuis la zone de saisie texte et afficher un message avec OK si la saisie dans la zone est Bonjour sinon on affichera un message avec comme texte Nok.
Voici le Formulaire en question :

Nous appellerons la zone de saisie : txtSaisie
Le bouton sera nommé : btnLancement.

Nouveauté 2010 : Il est possible de choisir la forme du bouton.

Nouveauté 2010 : Il est possible de Modifier la couleur de fond en sélectionnant les styles prédéfinis comme dans Word et PowerPoint.

Nouveauté 2010 : Lors du passage du curseur sur le bouton celui-ci change de couleur en fonction du Style et fonce lors du clic sur celui-ci.

III - Editeur de Macros

L'éditeur de Macros a subi des modifications conséquentes, maintenant on construit une macro comme des lignes de codes VBA en simplifié.

L'éditeur de Macros sans une ligne de code se présente comme ceci :

Pour ajouter des actions dans l'éditeur, nous avons deux méthodes :
La première, à partir de la liste déroulante disponible dans le contrôle ajout de commandes.

La seconde, depuis le volet "Catalogue d'Actions" :

Maintenant nous allons créer la macro permettant de tester si le mot bonjour est situé dans la zone de saisie.
Voici le code en VBA :

Sub Test_VBA()

' macro de test codé en VBA

If Forms("Form1")!txtSaisie = "Bonjour" Then

MsgBox "OK", vbOKOnly, "Titre du test"

Else

MsgBox "NOK", vbExclamation, "Titre du test"

End If

End Sub

Maintenant nous allons réaliser la même chose mais depuis l'éditeur de macros.
Dans un premier temps nous choisirons la commande Comment et saisir le commentaire :

Nous allons ensuite sélectionner la commande If afin de réaliser un test :

Nous allons mettre la condition de test afin d'orienter le code selon le résultat. Pour cela cliquez sur la baguette avec des étoiles au bout de la zone de saisie, le générateur d'expressions s'ouvre il vous suffit de sélectionner le contrôle txtSaisie de le tester avec la chaîne de caractères "Bonjour" :

Maintenant nous allons appeler la commande MessageBox et y saisir les différentes lignes, dans un premier temps le texte du message, ensuite l'émission ou non d'un beep, le type d'image intégré et le titre.

Il nous faut ajouter un Else et à nouveau la commande MessageBox comme précédemment :

Voilà notre macro est terminée, il ne reste plus qu'à affecter la macro au bouton sur l'évènement Sur Click.
Ouvrez le formulaire en mode création, sélectionnez le bouton puis dans le volet des propriétés à droite allez dans l'onglet évènement et sélectionnez le nom de votre macro dans la ligne sur click.

IV - Résultat du test

Maintenant nous allons ouvrir le formulaire en mode Affichage.
Nous allons mettre Bonjour dans la zone de texte et appuyer sur le bouton.

Effaçons la zone de saisie et validons en cliquant sur le bouton :

V - Conversion de Macro en VBA

Access 2010 permet de convertir la macro en VBA depuis un bouton du Ruban :

Voici le résultat :

Function Macro1()

' macro de test depus l'éditeur de macro
If (Forms!Form1!txtSaisie = "Bonjour") Then
MsgBox "OK", vbOKOnly, "Titre du Test"
Else
MsgBox "NOK", vbExclamation, "Titre du Test"
End If

End Function

VI - Créer un macro Autoexec

Nous allons créer une nouvelle macro qui appellera notre formulaire au démarrage.
Il nous faut créer une nouvelle macro.
Nous allons ensuite appeler la commande OpenForm.

Plusieurs paramètres sont disponibles pour l'ouverture du Formulaire :
- Liste des Formulaires disponibles pour la sélection.
- Le type d'affichage.
- Le nom du champ pour le filtre.
- La clause pour le filtre.
- Mode d'ouverture pour les données (lecture seule, modification, ajout).
- Le type d'affichage de la fenêtre.

Il suffit maintenant de sauvegarder la macro sous le nom : Autoexec.
A chaque démarrage de votre application cette macro sera exécutée.

VII - Remerciements

Merci à Philippe JOCHMANS, jacques_jean, Jeannot45 et Tofalu pour leurs temps consacré à la lecture et correction.
Nono40 pour son excellent outil.
A www.developpez.com pour leur hébergement.