Developpez.com

Club des développeurs et IT pro
Plus de 4 millions de visiteurs uniques par mois

Nouveauté Access 2010 : Editeur de Macros

Office 2010

Vous pouvez commenter et donner une note à cet article : 5 commentaires Donner une note à l'article (5)

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.

Article lu   fois.

L'auteur

Profil ProSite personnel

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

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 :

Image non disponible

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

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

Image non disponible

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

Image non disponible

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.

Image non disponible

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é.

Image non disponible


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

Image non disponible


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.

Image non disponible


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

Image non disponible


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 :

 
Sélectionnez

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 :

Image non disponible


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

Image non disponible


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" :

Image non disponible


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.

Image non disponible


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

Image non disponible


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.

Image non disponible

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.

Image non disponible


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

Image non disponible

V. Conversion de Macro en VBA

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

Image non disponible


Voici le résultat :

 
Sélectionnez

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.

Image non disponible


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.

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

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. Droits de diffusion permanents accordés à Developpez LLC.