[VBA] Activation et desactivation de macros

Fermé
Kvo Messages postés 27 Date d'inscription mercredi 28 février 2007 Statut Membre Dernière intervention 22 mai 2008 - 6 mars 2007 à 16:30
Kvo Messages postés 27 Date d'inscription mercredi 28 février 2007 Statut Membre Dernière intervention 22 mai 2008 - 8 mars 2007 à 10:56
Bonjour à tous,

J’ai différentes questions concernant l’un de mes codes VBA et je cherche des âmes charitables pour m’aider. Je vais tacher d’être clair dans mes explications. :)

Je dispose d’un fichier de données pour lequel j’ai écrit plusieurs procédures de mise à jour automatique. Différentes personnes vont utiliser ce fichier mais chacune d’entre elles ne doit pouvoir accéder qu’à certaines feuilles uniquement. Parmi les utilisateurs certains vont avoir besoin des macros (reliées à des boutons sur mes feuilles), et d’autres pas (et ne doivent du reste surtout pas les utiliser).

Supposons que mon classeur n’ait que 3 feuilles. Les boutons activant les macros sont situés sur la feuille 3.

A l’aide d’une inputbox lancée par la fonction « auto_open » j’identifie qui veut utiliser le fichier.

Première question : J’aimerais savoir s’il y a une différence entre utiliser la fonction auto_open dans un module et recourir à Thisworkbook -> open ?

Lorsque l’utilisateur A s’identifie VBA rend visibles les feuilles 1 et 3. Cet utilisateur met à jour ses données automatiquement en utilisant les macros.
Lorsque l’utilisateur B s’identifie VBA rend visibles les feuilles 2 et 3. Cet utilisateur met à jour ses données manuellement et ne doit surtout pas exécuter les macros destinées à l’utilisateur A.

Deuxième question : Comment puis-je, lorsque B s’identifie, désactiver les macros de sorte que s’il clique sur les boutons placés sur la feuille3 ça ne fasse rien ?

Pour éviter que les utilisateurs ne touchent au code VBA, je l’ai protégé par un password. Je sais très bien qu’il est crackable en deux secondes par des programmeurs, mais les utilisateurs de ce fichier sont des chèvres en informatique donc il est très utile :)

Troisième question : Peut-on protéger correctement un code VBA et si oui comment ?

J’identifie avec mon inputbox un 3e utilisateur qui est « Admin » et qui a accès à toutes les feuilles.

Quatrième question : J’aimerais savoir s’il est possible de déverrouiller automatiquement le code VBA lorsque l’admin s’identifie sans qu’il ait à rentrer le code sous VBE?

D’avance merci à tous, surtout si vous m’avez lu jusqu’au bout ! :)
A voir également:

1 réponse

Kvo Messages postés 27 Date d'inscription mercredi 28 février 2007 Statut Membre Dernière intervention 22 mai 2008 3
8 mars 2007 à 10:56
Up! ;)
0