VBA est un langage de programmation créé par Microsoft pour automatiser les opérations dans Excel. En plus d’Excel, VBA manipule les autres applications Microsoft Office telles que Access, Word, PowerPoint et Outlook. C’est un outil extrêmement puissant qui vous permet de contrôler dans Excel de nombreuses méthodes que vous ne pouvez pas faire ou que vous ne voulez pas faire manuellement. VBA est l’outil que vous utilisez pour développer des macros et manipuler des objets pour contrôler Excel et contrôler d’autres applications Office à partir d’Excel. Vous n’avez pas besoin d’acheter autre chose que la suite Office pour posséder également VBA. Si vous avez Excel sur votre ordinateur, alors vous avez VBA sur votre ordinateur.
Qu’est-ce qu’une “macro”?
VBA est donc un langage de programmation, et c’est aussi un langage macro. Confusion de la terminologie se pose lorsque l’on se réfère au code VBA qui est une série de commandes écrites et exécutées dans Excel. Qu’est-ce qu’une macro? On peut dire qu’une macro est une séquence d’instructions écrites en langage VBA qui sont stockées dans un module. Lorsque nous appelons une macro, en appuyant sur un bouton ou par une combinaison de touches, les instructions stockées dans celle-ci sont déclenchées.
Avec les macros, nous pouvons non seulement rationaliser les tâches que nous effectuons fréquemment, mais il est également possible d’étendre les fonctionnalités d’Excel, en créant de nouvelles fonctions pour résoudre des calculs que nous ne pouvons pas effectuer avec les fonctions standard du programme. Nous avons deux façons de créer une macro. L’une utilise l’outil Enregistrer une macros et l’autre en écrivant les instructions dans Visual Basic Editor intégré à Excel. Microsoft dissocie l’enregistrement d’un classeur avec macro (extension .xlsm) d’un classeur sans macro (extension .xlsx), depuis la version Excel 2007
Il y a une grande différence entre VB et VBA!
Avec tous les acronymes véhiculés dans le monde de l’informatique, il est facile de confondre certains termes. VB signifie Visual Basic, et ce n’est pas la même chose que VBA. Bien que VB et VBA soient des langages de programmation dérivés de BASIC et créés par Microsoft, ils sont par ailleurs très différents.
VB est un langage qui vous permet de créer des applications exécutables et autonomes qui ne requièrent même pas que leurs utilisateurs téléchargent Office ou Excel sur leurs ordinateurs. VBA ne peut pas créer d’applications autonomes et elles ne peuvent qu’exister que dans une application hôte telle qu’Excel et le classeur contenant le code VBA. Pour qu’une macro VBA s’exécute, son classeur d’application hôte doit être ouvert. Ce livre est basé sur VBA et comment il contrôle Excel.
Que pouvez-vous faire avec VBA?
Tous ceux qui lisent ce livre utilisent Excel pour leurs propres besoins, tels que la budgétisation financière, la prévision, l’analyse de données scientifiques, la création de factures ou le suivi des progrès de leur équipe de football préférée. Une chose que tous les lecteurs ont en commun est la nécessité d’automatiser une sorte de tâche fréquemment rencontrée qui prend trop de temps ou est trop lourde manuellement. C’est là que VBA entre en jeu.
De nombreuses commandes VBA sont à votre disposition et sont relativement faciles à implémenter et à personnaliser pour vos besoins quotidiens.
Tout ce que vous pouvez faire manuellement, vous pouvez le faire avec VBA, mais VBA vous permet de le faire plus rapidement et avec un risque réduit d’erreur humaine. Beaucoup de choses que Excel ne vous permet pas de faire manuellement, vous pouvez faire avec VBA. Voici une poignée d’exemples de ce que VBA peut faire pour vous :
■ Automatisation d’une tâche récurrente : Si vous avez besoin de produire des rapports de ventes et de dépenses hebdomadaires ou mensuels, une macro peut les créer en un rien de temps. Et si les données sources changent plus tard dans la journée et que vous avez besoin de produire à nouveau le rapport mis à jour, pas de problème, exécutez à nouveau la macro!
■ Automatisation d’une tâche répétitive : Lorsque vous devez effectuer la même tâche sur chaque feuille de calcul de votre classeur ou dans chaque classeur d’un dossier de fichiers particulier, vous pouvez créer une macro pour faire une boucle sur chaque objet et effectuer l’action.
■ Exécution automatique d’une macro si une autre action a lieu : Dans certaines situations, vous souhaitez qu’une macro s’exécute automatiquement, vous n’avez donc pas à vous soucier de vous souvenir de l’exécuter vous-même. Par exemple, pour actualiser automatiquement un tableau croisé dynamique au moment où ses données sources changent, vous pouvez surveiller ces modifications avec VBA, en veillant à ce que votre tableau croisé dynamique affiche toujours des résultats en temps réel. C’est ce qu’on appelle la programmation « un événement ».
■ Création de vos propres fonctions de feuille de calcul : Vous pouvez créer vos propres fonctions de feuille de calcul, appelées fonctions définies par l’utilisateur, pour gérer les calculs personnalisés que les fonctions intégrées d’Excel ne fournissent pas.
■ Création d’applications complètes, pilotées par des macros
Si vous souhaitez passer du temps, vous pouvez utiliser VBA pour créer des applications à grande échelle avec un onglet Ruban personnalisé, des boîtes de dialogue, une aide à l’écran et bien d’autres accessoires.
■ Créer des compléments personnalisés pour Excel
Vous connaissez probablement certains des compléments fournis avec Excel. Par exemple, Analysis ToolPak est un complément populaire. Vous pouvez utiliser VBA pour développer vos propres compléments à des fins spécifiques.