Le VBA, Visual Basique pour application, définition et utilisation dans Excel.
Afin de répondre à vos propres besoins, la programmation VBA est la solution personnalisée proposée par Excel qui vous permettra d’ajouter des caractéristiques, des fonctions ou des commandes qui ne pourraient pas être directement intégrer sur Excel.
Les possibilités du VBA : Nombreuses, surtout dans l’utilisation des Macros de la suite Office.
- La combinaison d’un nombre indéterminé de commandes
- L’ajout de nouvelles fonctions et de nouvelles commandes comme intégrer une fonction qui vous permettra de calculer une TVA personnalisée, une charge salariale particulière, etc…
- L’automatisation d’actions répétitives
- La modification et l’amélioration des commandes d’une application
- L’interaction des différentes applications d’Office
- La création d’interface personnalisée
Le VBA – Outil de programmation
Les projets VBA sont des programmes ou macros écrits dans le langage Visual Basic.
Nous travaillerons sur le développement de projets VBA à travers l’enregistrement de macros ; Le terme « macro » désignant le regroupement d’un ensemble de commandes en une seule.
Proche du Visual Basic qui est l’outil de développement d’applications Windows, le VBA a été conçu pour des applications lui imposant ainsi d’être exécuté dans les programmes qui l’intègrent, comme dans le cas pour Excel.
Le concept d’Objet : Comprendre ce qu’est la POO, programmation orientée Objet.
Le VB est un langage de programmation orienté Objet qui repose sur une structure, qui vous le verrez, rappelle par bien des points les objets de la vie réelle.
Objets et collections d’objets : Dans la vie réelle, un objet peut tout représenter. Chaque objet (comme par exemple une voiture) possède des propriétés (moteur, roues, carrosserie, etc…) et permet un certain nombre de méthodes (démarrer, freiner, accélérer, tourner, etc…) ce qui permet d’en maîtriser le comportement.
En Programmation orientée Objet, cet objet est nommé la classe Voiture.
C’est-à-dire que c’est le modèle qui vous permettra d’imaginer et de créer des milliers de voitures différentes et parce que les propriétés et les définitions sont définies dans cette classe, l’ensemble des véhicules appartenant à la classe Voiture est appelé la collection d’objets Voitures.
Pour précision : une collection porte le nom pluriel des objets qu’elle regroupe, c’est d’ailleurs comme cela qu’on les reconnaît.
Ainsi, la collection Workbooks renvoie à tous les objets Workbook, c’est à dire tous les classeurs ouverts et la collection Sheets, à toutes les feuilles d’un objet Workbook, etc
Définition : Le terme Classe désigne la définition commune d’un ensemble d’objets tandis que le terme Collection désigne l’ensemble des objets appartenant à une classe (toutes les voitures en circulation)
L’accès aux objets
Pour pouvoir agir sur un objet, nous devons l’identifier.
Prenons l’exemple de la brosse à dent : Pour se laver les dents, nous devons identifier l’objet « Brosse à dent ».
Ainsi pour accéder à un objet Excel, vous devrez procéder de la même manière ; Ce qui signifie que vous devrez partir de l’objet se situant le plus haut dans la hiérarchie d’objets et progresser dans cette hiérarchie jusqu’à atteindre l’objet désiré.
Pour séparer les différentes collections et objets que nous rencontrerons jusqu’à atteindre l’objet voulu, nous utiliserons le point.
La référence à un objet bien défini dans une collection se fera donc selon la syntaxe suivante :
Nom_Collection(« Nom_Objet »)
Pour exemple, le code VB permettant d’appeler la feuille de classeur Excel nommée « CASociete », et située dans le classeur « MONCLASSEUR » (sous condition que celui çi soit ouvert) serait :
Application.Workbooks(« MONDOCEXCEL.xlsm »).Sheets(« CASociete »).Activate.
Pour précision : Au delà de leur nom, les objets d’une collection sont identifiés au sein de la collection par une valeur indice qui représentera leur position dans la collection. Cette valeur pourra ainsi être utilisée pour renvoyer un objet d’une collection selon la syntaxe suivante : Nom_Collection(IndexObjet) ; IndexObjet représente donc la position de l’objet dans la collection.
Quant à l’instruction suivante : Workbooks(2).Activate
, elle active le classeur Excel apparaissant en deuxième position dans le menu Fenêtre.
La propriété des objets : Un moyen nécessaire pour les définir et les comprendre.
Les propriétés pourront être soit un attribut de l’objet, soit un aspect de son comportement.
Pour exemple : les propriétés d’une voiture seront, entre autres, sa marque, son modèle, l’état des pneus, etc… ; Pour un document Word, les propriétés seront, entre autres, son modèle, son nom, sa taille, etc…