Bonjour tout le monde,
Je viens de finir de mettre en place le système de protection d'un classeur comprenant une vingtaine de pages. En temps normal, seul la lecture des feuilles sont autorisées. Pour pouvoir les modifier, une identification est nécessaire (mot de pass et pseudo). Tout ceci marche très bien, j'ai pu faire des tests, il n'y a pas de souci.
Mais voila, juste après, j'ai terminé mon système en protégeant (partiellement) les macros VBA. Pour ce faire, j'ai tout simplement fait la chose suivante :
Dans VBA, cliquer sur "outils" puis sur "Propriétés de VBA project" puis cliquer sur "Verrouiller le projet pour l'affichage" et renseigner un mot de pass.
Ce système de protection de macro (protection partielle j'en ai bien conscience) marche bien. Mais depuis que j'ai mis en place ce système, il m'est impossible de fermer le classeur. Si je tente de fermer le classeur, excel me demande d'abord si je souhaite enregistrer. Que je réponde positivement ou non, le classeur plante juste après c'est à dire que sur la feuille donnée du classeur, je ne peux rien faire. Je ne peux pas modifier de cellulles, changer de pages, cliquer sur un onglet etc... Je peux aller sur internet ou ouvrir d'autre applis, meme aller sur VBA s'il n'est pas fermé, mais mon classeur excel reste lui figé. Je suis obligé d'insister en appuyant sur l'onglet fichier ou en utilisant le gestionnaire de taches pour forcer le système à quitter excel (et encore avec le gestionnaire de taches, l'onglet traditionnel "applications" ne suffit pas, je dois passer par l'onglet "processus" ce qui est encore plus radical).
Par ailleurs, je ne peux plus modifier mon code VBA c'est à dire que je ne peux pas l'enregistrer ou supprimer des modules/userform sans qu'il plante.
J'ai pensé en premier lieu que le bug vient du mot de pass de sécurisation des macros VBA mais j'ai pu enlever cette sécurité sans problème et le fichier plante toujours.
Quand j'utilise d'autre fichiers excel, ceux-ci marchent parfaitement. Je ne sais vraiment pas quelle est l'erreur mais la c'est dramatique. Sa fait plus d'un mois que je code du VBA sur ce fichier (mon code a été sauvegardé heureusement) et je doit absolument trouver une solution.
J'espère que vous pourrez m'aider.
EDIT : titre modifié
Partager