Événements dans Excel

Le terme "Événement Excel» est utilisé pour indiquer certaines actions effectuées par l'utilisateur dans Excel. Par exemple, lorsqu'un utilisateur change de feuille de classeur, il s'agit d'un événement. La saisie de données dans une cellule ou l'enregistrement d'un classeur sont également des événements Excel.

Les événements peuvent être liés à une feuille de calcul Excel, à des graphiques, à un classeur ou directement à l'application Excel elle-même. Les programmeurs peuvent créer du code VBA qui sera exécuté automatiquement lorsqu'un événement se produit.

Par exemple, pour qu'une macro s'exécute chaque fois que l'utilisateur change de feuille de calcul dans un classeur Excel, vous devez créer un code VBA qui s'exécutera chaque fois que l'événement se produit. FeuilleActiver classeur.

Et si vous souhaitez que la macro s'exécute chaque fois que vous accédez à une feuille de calcul spécifique (par exemple, Sheet1), alors le code VBA doit être associé à l'événement Activer pour cette feuille.

Le code VBA destiné à gérer les événements Excel doit être placé dans la feuille de calcul ou l'objet de classeur approprié dans la fenêtre de l'éditeur VBA (l'éditeur peut être ouvert en cliquant sur Alt + F11). Par exemple, le code qui doit être exécuté chaque fois qu'un certain événement se produit au niveau de la feuille de calcul doit être placé dans la fenêtre de code de cette feuille de calcul. Ceci est montré dans la figure:

Dans l'éditeur Visual Basic, vous pouvez afficher l'ensemble de tous les événements Excel disponibles au niveau du classeur, de la feuille de calcul ou du graphique. Ouvrez la fenêtre de code de l'objet sélectionné et sélectionnez le type d'objet dans le menu déroulant de gauche en haut de la fenêtre. Le menu déroulant de droite en haut de la fenêtre affichera les événements définis pour cet objet. La figure ci-dessous montre une liste d'événements associés à une feuille de calcul Excel :

Événements dans Excel

Cliquez sur l'événement souhaité dans le menu déroulant de droite, et une procédure sera automatiquement insérée dans la fenêtre de code de cet objet Sol. en tête de procédure Sol Excel insère automatiquement les arguments requis (le cas échéant). Il ne reste plus qu'à ajouter le code VBA pour déterminer quelles actions la procédure doit effectuer lorsque l'événement souhaité est détecté.

Exemple

Dans l'exemple suivant, chaque fois qu'une cellule est sélectionnée B1 sur la feuille de travail Sheet1 une boîte de message apparaît.

Pour effectuer cette action, nous devons utiliser l'événement de feuille de calcul Sélection_Change, qui se produit chaque fois que la sélection d'une cellule ou d'une plage de cellules change. Fonction Sélection_Change reçoit comme argument Target objet -. C'est ainsi que nous savons quelle plage de cellules a été sélectionnée.

événement Sélection_Change se produit avec toute nouvelle sélection. Mais nous avons besoin que l'ensemble d'actions soit exécuté uniquement lorsque la cellule est sélectionnée B1. Pour ce faire, nous suivrons l'événement uniquement dans la plage spécifiée Target. Comment il est implémenté dans le code du programme ci-dessous :

'Code pour afficher une boîte de message lorsque la cellule B1 est sélectionnée 'sur la feuille de calcul en cours. Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'Vérifiez si la cellule B1 est sélectionnée If Target.Count = 1 And Target.Row = 1 And Target.Column = 2 Then 'Si la cellule B1 est sélectionnée, faites la MsgBox suivante "Vous avez sélectionné une cellule B1" End If End Sub

Soyez sympa! Laissez un commentaire