Pourquoi l’usage des macros n’est pas plus répandu

Publié le 21 juillet 2020
par Sophie Marchand M.Sc., CPA, CGA, MVP
Éditeur de code VBA

Pourquoi l’usage des macros n’est pas plus répandu

L’article suivant se veut une réponse d’un consultant en informatique, qui me demandait : “Pourquoi l’utilisation des macros n’est pas plus répandue”. D’abord, il faut préciser que lorsqu’on parle de macros, de nombreux usagers d’Excel ne savent tout simplement pas de quoi il s’agit ou alors, ils croient à tort que les macros se limitent aux possibilités offertes par l’enregistreur de macros (qui enregistre une série d’actions et peut la répéter sur demande) alors que les macros dans Excel sont supportées par un langage de programmation très riche, le VBA (Visual Basic for Applications). L’enregistreur de macros est facile à maîtriser par les usagers mais est limité en termes de bénéfices. La programmation VBA, quant à elle, est beaucoup plus difficile à apprendre mais ouvre aussi beaucoup plus de possibilités.

 

Enregistreur de macros

Enregistreur de macro

Éditeur de code VBA

Éditeur de code VBA

 

Questionnement d’un consultant informatique

Un consultant informatique m’a fait parvenir un courriel qui ressemblait à un cri de désespoir, dont voici l’essentiel du message:

J’exerce une activité en consultance informatique. L’essentiel de mon travail est consacré à l’implémentation de logiciels de gestion. Il m’arrive aussi de développer de petits programmes sur mesure en VBA. Il s’agit plutôt d’une activité complémentaire. Ce ne sont jamais de gros projets mais (presque) chaque fois que je les livre, les clients disent un « Ah ! Si j’avais su plus tôt qu’on pouvait faire ça ! ». Ça reste un mystère pour moi… Quel est le problème avec les développements en VBA ? Pourquoi cette technologie n’est pas plus répandue, plus connue ?Consultant informatique

 

Quelles sont les avantages des macros dans Excel?

L’utilisation de macros VBA dans Excel, en entreprise, permet principalement de :

 

  • Créer des formulaires pour l’entrée de données, comme par exemple :
    • L’entrée de données pour des comptes de dépenses ;
    • L’entrée de données pour la facturation ;
    • Etc.

Ces données peuvent ensuite être compilées dans un base de données Excel, qui peut être analysée.

 

  • Automatiser des tâches, comme par exemple :
    • Consolider les informations entrées via des formulaires ;
    • Importer des données de fichiers Excel externes dans le fichier actif ;
    • Exporter des données du fichier Excel actif vers d’autres fichiers ;
    • Modifier les données importées (optimiser le format et la structure) ;
    • Envoyer des courriels à partir d’informations stockées dans des cellules du fichier Excel actif ;
    • Etc.

Ces tâches peuvent être exécutées sur commande via un bouton ou alors selon certaines règles, comme à l’ouverture du fichier, par exemple.

 

Ces tâches seraient plus laborieuses ou impossibles à faire sans langage VBA.

 

Vous avez des sources de données volumineuses à rassembler et analyser dans Excel ? Apprenez à automatiser tout le processus d’importation, de transformation et de modélisation  des données avec nos formations sur Power Query et Power Pivot dans Excel.

 

En somme, utiliser le langage VBA dans un fichier Excel permet de sauver énormément de temps et d’éviter des erreurs de manipulation.

 

Quels sont les freins à l’adoption des macros en entreprise?

Voici à mon avis, les principales raisons qui freinent l’adoption des macros en entreprise:

  • Apprendre à programmer en langage VBA n’est pas simple. Il faut y investir beaucoup de temps et ce ne sont malheureusement pas tous les usagers qui ont le temps et/ou la volonté de se former de la sorte.
  • Excel évolue constamment, ce qui peut affecter la performance de code rédigé dans le passé. Le passage d’une version Excel à une autre peut effectivement compromettre le comportement de certaines macros, ce qui décourage souvent les usagers d’en faire l’emploi.
  • Il est pratiquement impossible de développer des macros qui pourront fonctionner dans tous les contextes sans exception, sans avoir testé à l’avance tous ces contextes. Il faut donc accepter le fait que les macros pourront, à l’occasion, entraîner des problèmes.
  • Le code VBA ne peut pas être exécuté sur le web, via par exemple, Excel Online alors que nous sommes dans une ère où la majorité des programmes peuvent être exécutées en ligne.
  • Ceux qui savent programmer en VBA ont tendance à développer des programmes peu documentés. Lorsqu’ils quittent l’entreprise ou lorsqu’ils sont absents, il est difficile de trouver des remplaçants pour assurer le bon fonctionnement des macros. Ceci place les entreprises dans des positions difficiles.
  • Toutes ces raisons forcent souvent les entreprises à déléguer le développement de macros VBA à l’externe, ce qui peut nuire à leur autonomie et les placer dans une situation délicate.

 

Quelles sont les alternatives plus modernes?

Il existe désormais des alternatives pour plusieurs fonctionnalités qui pouvaient jadis être uniquement réalisées dans Excel par l’usage du langage VBA. L’avantage de ces alternatives repose notamment sur le fait qu’elles sont conçues à partir de technologies “low code” ou “no code”, ce qui en facilite grandement l’apprentissage et l’adoption.

 

Par exemple, pour créer des formulaires d’entrée de données et compiler automatiquement les résultats, on peut désormais avoir recours à différentes solutions comme :

 

Pour automatiser des tâches, Excel dispose maintenant de:

Contenu flux

 

Ce faisant, les usagers qui ne maîtrisent pas encore le langage VBA ont tendance à se tourner vers l’apprentissage de solutions plus modernes comme Power Query, Power Pivot, Power Apps, Power Automate et les formulaires Excel.

 


 

Formation complémentaire

Pour automatiser davantage vos tâches dans Excel, nous vous recommandons de suivre notre formation Excel – Introduction à Power Query et au langage M.

 

Voici quelques commentaires d’apprenants ayant suivi la formation en ligne Excel – Introduction à Power Query et au langage M:

Amélie Tremblay
Écrit il y a 2 mois
Une des rares formations où nous quittons avec une boîte à outils.

Très bonne formation applicable à ma réalité. Une des rares formations où nous quittons avec une boîte à outils.

Cécile BERNARD
Écrit il y a 3 mois
Je ne regrette absolument pas mon choix !

Excellent !! Je suivais déjà Sophie via Twitter ou directement sur le site du CFO masqué (forum et astuce) et quand il a fallu déterminer quel organisme de formation prendre, j'ai naturellement pensé au CFO Masqué. Je ne regrette absolument pas mon choix !

Stephanie Lambert
Écrit il y a 2 ans
Enfin du contenu que je ne connaissais presque pas

J'ai enfin pu avoir l'expérience d'un nouvel apprenant et comme je m'y attendais, elle fut très positive. Les notions sont bien expliquées et illustrées avec des exemples concrets. Il est très utile d'avoir les mêmes tables de données pour pouvoir reproduire les exemples. Les documents pdf fournis sont clairs et bien faits.

Daniel Harvey
Écrit il y a 2 ans
J'ai adoré.

Comme introduction a l'outil, pour avoir un aperçu de ce qu'il est possible de faire, je pense que la formation est vraiment géniale.

CFO-Masque_Formations-en-ligne_FB Le CFO masqué offre un vaste choix de formations en informatique décisionnelle avec Excel et Power BI, via un portail en ligne et à distance en temps réel, selon un calendrier. Si vous désirez organiser des formations privées, faites nous simplement parvenir un courriel à info@lecfomasque.com . Des certificats convenant aux normes de formation continue des divers ordres professionnels du Québec sont offerts pour l'ensemble des formations.  

Découvrez quelles formations vous conviennent

 

1 réflexion sur “Pourquoi l’usage des macros n’est pas plus répandu”

  1. JACQUES-HENRY BORG-FLORENTIN

    Bonjour
    Concernant les freins à l’utilisation de la programmation VBA dans une solution Excel, je voudrais ajouter deux arguments.
    En premier, une bonne structuration de la solution tableur associée à une bonne utilisation des fonctions et fonctionnalités de base permettent de réduire notablement le nombre de cas où une mécanisation par programmation apporte un avantage : séparation données/traitements/résultats, utilisation des TCD, de power-pivot etc… Viser la simplicité et la clarté de la solution tableur est un gage d’efficacité.
    En second, la programmation (par un tiers) me parait tout à fait antinomique avec le concept d’origine du tableur : donner le pouvoir de concevoir des solutions informatiques à l’utilisateur, en toute autonomie, sans dépendre du programmeur, et sans apprentissage technique lourd.
    Même si je construis des solutions plus lourdes et plus sophistiquées qu’au temps de mes premiers tableaux Visicalc, je continue de penser qu’une solution tableur doit rester simple à construire, à expliquer, à vérifier, à partager, à mémoriser, à modifier…
    Ce qui exclut la programmation… sauf quelques petites macros enregistrées pour les opérations simples et répétitives (sélection, impression…).
    Merci pour vos messages, ils sont toujours passionnants.
    Jacques-Henry

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Scroll to Top