Quand on utilise un bouton de la barre d’outils « Boîte à outils Contrôles », il est inutile d’avoir un fichier .xla. En effet, ce type de bouton (CommandButton) possède sont propre module de classe.
Lorsque le bouton est créé, il est automatiquement sélectionné. Si ce n’est pas le cas, il faut cliquer sur le bouton de la barre d’outils représentant une latte et un crayon (Mode création). Ensuite avec le bouton droit de la souris sur le CommandButton, choisir dans le menu contextuel « Visualiser le code » et taper le code de l’action de ce bouton dans ce module. Le nom de la macro sera « Private Sub CommandButton1_Click() ».
Pour masquer les codes VBA, il suffit de bloquer l’affichage par mot de passe dans VBA. Le module ne sera pas apparent.
Pour mettre un mot de passe
1. Dans VBA, clique avec le bouton droit sur « VBAProject (NomClasseur) dans le volet VBAProject. Si ce volet n’est pas affiché, alors aller dans le menu « Affichage », puis « Explorateur de projet ». Dans le menu contextuel, choisir « Propriétés de VBAProject … ».
2. Prendre l’onglet protection et cocher la case « Verrouiller le projet pour l’affichage », puis entrer le mot de passe, le confirmer et puis « OK ».
3. Enregistre le fichier. Le mot de passe ne sera actif qu’après avoir fermé complètement le fichier.
Voilà ! Je ne vois pas d’autres solutions.