VBA – Comment masquer une macro (procédure)

Toutes les macros (procédures Sub) sont visibles dans la liste des macros sauf si elles ont au moins un argument

Pour diverses raisons il est préférable d’en cacher certaines pour éviter par exemple que l’utilisateur lance une macro qui doit être lancée par une autre procédure.

Comment cacher une procédure Sub ?

Il y a plusieurs possibilités

  • Si la procédure est dépourvue d’argument, en ajouter un qui est optionnel.
    Exemple : Sub maMacro(Optional monArgument)
  • Déclarer la procédure comme privée (Mot clé Private)
    Exemple : Private Sub maMacro()
    La procédure n’apparaît plus dans la liste mais elle n’est plus appelables depuis un autre module
  • Reste la dernière et meilleure solution, déclarer le module privé. Il suffit de placer cette déclaration  Option Private Module en tête de module (par exemple en dessous de la déclaration Option Explicit)

 

Laisser un commentaire

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

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.