Excel - Création d'une procédure VBA pour un événement

Décembre 2016

Création d'une procédure VBA pour un événement


Un événement est une occurrence prédéfinie à laquelle vous pouvez attacher du code : ce dernier s'exécutera dès que l'occurrence se produira. Seuls certains événements de certains objets peuvent être associés à une macro. De façon générale, une procédure associée à un événement porte obligatoirement le nom suivant :
Sub nomobjet_nomévénement
L'exemple suivant utilise l'événement Open pour exécuter une macro lorsque vous ouvrez le classeur actif.
1.Dans le groupe Code de l'onglet Développeur, cliquez sur Visual Basic.
2.Dans la fenêtre Explorateur de projets, cliquez avec le bouton droit sur l'objet ThisWorkbook, puis cliquez sur Code. Si la fenêtre Explorateur de projets n'est pas visible, dans le menu Affichage, cliquez sur Explorateur de projets.
3.Dans la liste Objet au-dessus de la fenêtre Code, sélectionnez Workbook. Cette opération crée automatiquement une procédure vide pour l'événement Open :
Private Sub Workbook_Open()

End Sub
4.Ajoutez les lignes de code suivantes à la procédure :
Private Sub Workbook_Open()
MsgBox Date
Worksheets("Feuil1").Range("A1").Value = Date
End Sub
5.Basculez vers Excel et enregistrez le classeur sous forme de classeur prenant en charge les macros (.xlsm).
6.Fermez le classeur et rouvrez-le. Lorsque vous ouvrez de nouveau le fichier, Excel exécute la procédure Workbook_Open qui affiche la date courante dans un message.
7.Cliquez sur OK dans la boîte de dialogue du message. Remarquez que la cellule A1 de la feuille 1 contient dès que vous avez cliqué la date, à la suite de l'exécution de la procédure Workbook_Open.

à placer côte à côte

Liste des membres et Information rapide automatique


Vous avez peut-être remarqué lors de la saisie d'instructions dans l'éditeur l'apparition d'une boîte de liste déroulante, après la saisie d'un nom d'objet suivi par un point. C'est la liste de membres qui affiche la liste des méthodes et propriétés de l'objet qui précède le point. Sélectionnez une méthode ou une propriété dans la liste en cliquant dessus ou en tapant quelques-unes des premières lettres de son nom, puis appuyez sur la barre d'espace pour que l'éditeur place la sélection dans votre déclaration.


De même, lorsque vous saisissez un nom de fonction suivi d'une seule parenthèse (celle de gauche), l'Information rapide automatique affiche les arguments requis par cette fonction dans une info bulle. Cette aide réduit les risques d'erreur de syntaxe. Elle est disponible même pour des fonctions personnalisées créées par vous-même, comme le montre la figure suivante pour la fonction NbJours() créée un peu plus tôt dans ce chapitre.


Le texte original de cette fiche pratique est extrait de
«Tout pour bien utiliser Excel 2010» (Fabrice LEMAINQUE, Collection CommentCaMarche.net, Dunod, 2010)

A voir également :

Ce document intitulé «  Excel - Création d'une procédure VBA pour un événement  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.