Protection code VBA

Bonjour,

J´ai créé un code VBA dans un fichier excel. J´aimerais protéger ce code de 2 façon différentes.

Premièrement, j´aimerais y mettre un mot de passe pour qu´un utilisateur "classique" ne puisse pas accéder et modifier le code. Le problème est que la protecion par mot de passe fournie par Mcrosoft est assez facile a détruire (voir application Acyd pour déprotéger les données, ou bien l´utilitaire fournit par Microsoft pour déprotéger les feuilles protégées). L´application Acyd.xla est en revanche bien protégée; en effet, il est impossible à un utilisateur peu expériementé de déterminer quel est le mot de passe pour pouvoir lire le code. J´aimerai donc savoir comment puis-je protéger mon code afin qu´un utilisateur non expert en programation ne puisse pas y accéder.

Deuxièmement, j´aimerais créer un espèce de numéro de licence. Quelque de chose qui demanderais d´entrer un nouveau numero tous les 6 mois par exemple afin de pouvoir continuer l´utilisation de la macro. Cela est- il possible?

Merci pour votre aide.

Bonjour,

La protection donnée par excel n'est pas très efficace comme tu as pu le constater.

Quel est le but final de ton fichier ? quels sont les utilisateurs ?

...utilisateur non expert en programation ne puisse pas y accéder.

Si l'utilisateur est non expert, je dirais que le pb est résolu puisqu'il n'y connait rien et ne comprendra rien au code. Alors dans ce cas mets uniquement un mot de passe en VBA pour le protéger.

Peut être aussi que mettre tes codes dans une XLA serait une solution puique cela te permettrait déjà de ne pas utiliser le fichier sans charger au préalable la macro complémentaire *.xla et là c'est moins évident d'y accéder.

Amicalement

Dan

Les utilisateurs sont des clients et donc bien que non experts, pourraient télécharger des utilitaires pour forcer la protection du mot de passe. Et ca serait dommage de laisser le travail effectuer pour ce code si facilement...

Que signifie ce que tu me propose avec la XLA. Je ne sais pas exactement ce que c´est et ne sais pas comment fonctionne tout ca. Peux-tu me donner plus d´informations.

Merci bien

Re,

Les utilisateurs sont des clients et donc bien que non experts, pourraient télécharger des utilitaires pour forcer la protection du mot de passe.

Effectivement ils pourraient. Là tu ne pourras rien y faire.

De plus ton fichier ne sera pas utilisable s'ils n'ont pas le VBA installé ou activés les macros à l'ouverture.

Que signifie ce que tu me propose avec la XLA.

Une macro XLA est en fait une macro complémentaire que tu dois installer dans le dossier macro complémentaire d'excel. Si tu transfères ton code dans un nouveau fichier vierge puis que tu le sauves en format XLA, il te reste à le placer dans le dossier macro compl. d'excel. Une fois fait, tu l'actives une fois pour toute dans Outils / macro complémentaire; cela permettra de disposer de cette macro à chaque ouverture de ton fichier. L'avantage est que tu n'as plus de macros dans ton fichier. Le désavantage est que la macro XLA réside dans le dossier excel de l'utilisateur et donc qu'un petit malin pourrait aller rechercher mais aussi qu'elle sera toujours là pour tous les fichiers de tous les utilisateurs. Il y a bien moyen de l'activer à l'ouverture de ton fichier mais là, il faudrait un spécialiste des "modules de classe" pour t'aider je pense. A voir donc

Comme tu le vois il n'y a pas beacoup de solutions si ce n'est de mettre des mots de passe dans le projet VBA, dans tes feuilles et dans le code proprement dit. Plus il y a de portes fermées, plus l'utilisateur sera découragé.

Si besoin, tu peux toujours envoyer ton fichier que je vois de quoi il retourne.

Amicalement

Dan

Rechercher des sujets similaires à "protection code vba"