Excel-lence

évènement excel vba - Objets VBA

Cet article a pour objectif de clarifier certaines confusions liées aux fonctionnalités de Microsoft Excel et de présenter le concept des événements VBA ainsi que ses utilisations les plus fréquentes.

Pourquoi utiliser VBA EXCEL ?

L’utilisation de Microsoft Excel est très répandue de nos jours, surtout du côté des petites entreprises.

La macro est un outil exemplaire pour les entrepreneurs souhaitant bénéficier de ses nombreux avantages à petit budget.

En effet, VBA excel permet de stocker pertinemment les données et offre une grande flexibilité quant à leur gestion.
Il est vrai que comparé à d’autres outils de gestion des données, Microsoft excel est le plus simple et le plus facile à utiliser. La macro permet plusieurs axes d’amélioration des feuilles de calcul et notamment un champ très large d’automatisation des processus de travail.
Par contre, pour profiter de toutes les fonctionnalités et les privilèges des macros, il y a certains aspects techniques de l’outil qui semblent un peu plus compliqués et nécessitent un minimum de connaissances clés.
Comprendre la différence entre les feuilles de calcul et les classeurs, mieux connaître les évènements Excel et leurs codes associés et leur champ d’utilisation en plus du côté technique du langage VBA sont des atouts importants pour exploiter au maximum votre tableur.

La différence entre Workbook et Worksheet

Les termes Workbook et Worksheet ou feuilles de calcul et classeurs sont souvent l’objet de confusion chez de nombreux utilisateurs de Microsoft Excel. Pourtant, il y a une grande différence qui peut vous aider à distinguer les deux. Le workbook ou le classeur, comme son nom l’indique, est le dossier de stockage des feuilles de calcul.
Sous un seul workbook, on peut mettre de nombreux Worksheets allant jusqu’à 255. Par contre, l’inverse ne fonctionne pas. La feuille de calcul est une seule page qu’on peut facilement associer à un classeur, dupliquer, masquer et supprimer, tandis qu’ajouter un workbook à un autre est très compliqué. La différence principale entre worksheet et workbook est donc que le premier offre une vue unique hors que le deuxième offre un ensemble de vues sur les tableurs Excel.

excel workbook - classeur excel

Comprendre les événements Excel VBA et les macros

Les Événements VBA Excel sont des déclencheurs d’actions automatiquement et instantanément exécutées. Il s’agit d’une programmation VBA au sein du classeur qui définit la tâche ainsi que son événement associé dans une feuille de calcul ou dans l’ensemble des tableurs.

La macro offre la possibilité de créer des événements qui se déclenchent suite à un ou plusieurs objets prédéfinis. Les actions peuvent être effectuées soit par l’utilisateur ou par excel en fonction des paramètres mis en place. En effet, le simple fait d’ouvrir le classeur, de modifier le contenu d’une feuille de calcul ou de sélectionner des cellules précises peut engendrer des événements excel automatiques.
L’objectif du code exécuté suite à un événement VBA c’est de créer des tableaux Excel interactifs et dynamiques, d’améliorer l’emploi et le suivi dans Excel, de faciliter et d’automatiser certaines tâches.
Maintenant qu’on a compris la différence entre la feuille de calcul et le classeur et qu’on a bien expliqué l’intérêt de la programmation VBA, faisons le tour des événements les plus utilisés sur Microsoft Excel.

Comment créer des événements VBA excel pour exécuter la macro

Avant de se lancer dans les macros Excel, il est important de noter qu’il existe différents types d’événement VBA tels que les événements exécutés au niveau de la feuille de calcul, les événements au niveau du classeur et les événements au niveau de l’application…
Pour définir et exécuter un événement VBA excel, plusieurs étapes de base sont à suivre. Tout d’abord, il faut accéder à l’environnement de développement et sélectionner la feuille de calcul concernée par la macro avec un double clic. La liste déroulante en haut de la page sert à choisir le classeur et à désigner l’événement à mettre en place. Enfin, il ne reste qu’à introduire le code VBA pour créer l’événement et activer la macro.

Open-workbook

Cet événement d’ouverture de classeur est utilisé lorsqu’on souhaite exécuter automatiquement des macros lors du lancement du workbook.
Une fois que le classeur est ouvert, l’événement Open-workbook est exécuté pour afficher par exemple un message de rappel automatique.
Pour créer un événement d’ouverture de classeur, il faut :

  1. Cliquer sur F11 ou aller sur le Visual Basic Editor (graphique des données)
  2. Faire double clic sur le Workbook en question
  3. Choisir “workbook” dans la première liste déroulante et “open” dans la déclaration
  4. Entrer le code et le texte du message de rappel souhaité

Worksheet change

L’évènement worksheet change s’active lorsqu’une cellule ou une plage de calcul sont modifiées. Le code de l’événement de changement de feuille est exécuté par Excel VBA afin d’actualiser facilement les tableurs et d’effectuer des entrées numériques dans les cellules ou les feuilles de calcul appropriées.
Pour créer un événement worksheet_change, il faut:

  1. Ouvrir l’éditeur VB dans le classeur
  2. Double clic sur le projet Workbook
  3. Choisir “workbook” dans la première liste déroulante et “change” dans la deuxième
  4. Ajouter les lignes de code Worksheet Change Event

Workbook_BeforeClose

L’événement Workbook_BeforeClose peut exécuter un certain nombre d’instructions sur Excel. La fonctionnalité avant fermeture permet par exemple le suivi des utilisateurs ou le blocage de la fermeture si certaines conditions ne sont pas remplies.

Exemple d’utilisation :

Private Sub Workbook_BeforeClose(Cancel as Boolean)
If Me.Saved = False Then Me.Save
End Sub

PivotTableUpdate

L’événement PivotTableUpdate se déclenche lorsque le rapport de tableau croisé dynamique a été actualisé ou modifié. La macro affiche directement un message afin d’indiquer la mise à jour.

BeforeDoubleClic

L’événement BeforeDoubleClic se déclenche lorsque l’utilisateur effectue un double-clic sur une cellule. Par exemple, on peut colorer la cellule double cliquée en fonction de la feuille de calcul.

NewWorkbook

L’événement NewWorkbook s’exécute à chaque insertion d’un nouveau lorsqu’un nouveau classeur est créé.

Share this post: on Twitter on Facebook on Google+