Pourquoi commencer à s'intéresser aux macros sous Excel, au VBA (Visual Basic for Application) ?
Avec le VBA, Microsoft permet de développer de petits programmes, en bénéficiant de fonctionnalités intégrées dans Office comme par exemple les boites de dialogue (vous savez : "Voulez-vous continuer Oui Non ?").
Avec les macros, partez à la conquête d'un monde aux possibilités quasi infinies où heureusement, un enregistreur de macros facilite votre écriture de code.
Générer des mail à partir d'Excel ?
Gérer les fichiers de son ordinateur (création, nom, suppression, déplacement) ?
Bref, si l'Univers s'ouvre à vous, où s'arrêter pour ne pas aller trop loin ?
Dans ce billet, je reste bien sûr dans l'optique de la réalisation d'outil de pilotage ou de simplification de taches, pérenne, maintenable, sans que son concepteur soit le seul à pouvoir intervenir.
Combien d'entreprises ne maîtrisent plus leurs outils, et finissent par les abandonner alors qu'elles en auraient encore besoin ?
S'il fallait retenir 2 bénéfices liés à l'utilisation de macros, je dirais :
Gagner du temps, mais pas que :
L'utilisation de macros permet, en premier lieu, d'automatiser des opérations récurrentes dont les plus célèbres sont les copier/coller.
Dans une activité, il y a des rituels :
- Comptables (remontées de chiffres - traitement et analyses)
- Pilotage (génération d'indicateurs, de tableaux de bord)
- …
Améliorer la fiabilité :
Les macros permettent facilement d'intégrer des vérifications dont nous ne rêvions même pas quand il fallait les faire à la main, comme la cohérence des données à traiter, cohérence des résultats …
Bonnes pratiques pour un bénéfice total :
-
Ne pas utiliser de macros si je peux faire aussi bien sans
- Essentiellement traduire des séquences manuelles en macros plutôt que de chercher à optimiser au maximum la macro. Cela permet de garder le code lisible en cas d'évolution, et aussi d'avoir un mode "dégradé" (si la macro ne fonctionne plus, on peut revenir au manuel)
- Documenter les macros (lignes de commentaires dans le code)
- Laisser quelques ajustements possibles par simple paramétrage, en dédiant des cellules localisées sur une feuille "paramètres" ou "administration".
- Soigner l'interface utilisateur avec des échanges dynamiques par boites de dialogues.