Elephorm publie une formation à la programmation VBA ultra-complète, avec Loïc de Labrousse, ingénieur et utilisateur avancé de VBA depuis plus de 13 ans. L'occasion de revenir avec lui sur les principales applications de ce langages, ses avantages, mais aussi ses défauts.
Elephorm : Depuis combien de temps utilisez vous VBA ? Pour quel type d'applications ?
Loïc de Labrousse : J'utilise le VBA depuis le jour où j'ai été embauché en entreprise, c'est à dire depuis 13 ans. Je bosse dans une ingénierie de conception de plateformes pétrolières en tant qu'ingénieur process. J'utilise le VBA sous Excel principalement mais certains programmes que j'ai écris permettent de manipuler les objets d'autres logiciels spécialisés dans mon secteur d'activité, le Pétrole. Le VBA est présent dans un grand nombre de logiciels dans tout secteur d'activités.
Quelles sont selon vous les principaux avantages du VBA ?
Le VBA sous Excel permet de faire gagner un temps considérable aux différents ingénieurs. Le gain de temps n'est pas d'un point de vue rapidité de calcul comme l'addition de la valeur de deux cellules différentes parce que de ce point de vue là, Excel calcule déjà ses cellules de manière quasi instantanée. Le gain de temps est davantage d'un point de vue du remplacement des gestes de l'utilisateur. Par exemple, vous avez un fichier Excel d'ouvert et vous souhaitez récupérer une valeur située dans un autre fichier d'Excel, puis une valeur située dans un troisième fichier pour additionner ces deux dernières et placer le résultat dans une cellule du premier fichier ouvert. Grâce au code en VBA, toutes ces manipulations pourront être effectuées en un clin d'oeil: l'ouverture du second fichier, la sauvegarde de la valeur de la cellule concernée dans une variable, la fermeture de ce dernier fichier, l'ouverture du troisième fichier, la sauvegarde de la valeur de la cellule concernée dans une variable, la fermeture de ce dernier fichier, l'addition des deux variables, l'écriture du résultat dans une cellule du premier fichier.
L'avantage du VBA est que l'on peut piloter d'autres logiciels possédant le VBA toujours à partir d'Excel à condition de savoir comment se nomme les objets de cette autre application pour pouvoir les manipuler.
Le VBA est un langage relativement simple permettant de manipuler des feuilles, des cellules ou autres, i.e. des éléments d'Excel que tout utilisateur de ce logiciel connait. L'apprentissage de ce langage est donc bien plus ludique que tout autre langage de programmation.
Et ses défauts ?
Le défaut du VBA est qu'il ne peut fonctionner qu'avec une application hôte comme Excel, Word, Power Point, Autocad, etc... Donc sans ces applications, impossible d'utiliser ce langage. Les actions liées au re-calcul ou à l'affichage des valeurs de toutes les cellules d'Excel peuvent prendre, dans certains cas, énormément de temps, il faudra donc utiliser pour cela des astuces pour figer l'écran ou stopper le re-calcul des cellules.
Quel est selon vous l'avenir du VBA face aux autres langages de programmation ?
Microsoft ne maintiendra probablement pas le VBA éternellement, ceci dit, il devrait durer encore de longues années. Ce langage a été généralisé dans de nombreux logiciels autre que la Suite Microsoft Office comme Autocad, Adobe Acrobat, etc...