Bonjour le forum !
Je suis face à un soucis dont la résolution sera sûrement magistrale !
Je dispose d'un classeur contenant plusieurs feuilles de calcul et 2 feuilles graphiques. La structure du classeur est protégé (Workbook.Protect) et chacune de ces feuilles est protégée par la commande :
Sheets(nom_de_la_feuille).Protect Passeword:=motdepasse, userinterfaceonly:=True
D'après ces lignes de commande, les macros devraient pouvoir faire toutes les modifications qu'elles veulent sans qu'il faille désactiver les protections, tout en évitant les modifications de la part de l'utilisateur.
J'ai une procédure évènementielle sur mes deux graphiques. Lorsque l'utilisateur clique sur l'une des courbes du graphique, des informations s'inscrivent dans un formulaire et la courbe sélectionnée change de couleur.
Sans protection, ceci marche très bien. Depuis que j'ai mis les protections, les informations s'affichent correctement mais les courbes ne changent plus de couleurs. Pourquoi ?
Pour essayer de résoudre le problème, au début de ma procédure, il y a :
Sheets(nom_du_graphique).Unprotect (motdepasse)
et à la fin, il y a :
Sheets(nom_du_graphique).Protect Passeword:=motdepasse, userinterfaceonly:=True
Le problème c'est que le programme devient instable. 1 fois sur 3, lorsque la procédure évènementielle se lance, Excel plante.
Est-ce que vous auriez une astuce qui me permettrait de modifier mes graphiques sans avoir à désactiver et réactiver la protection des graphiques, à chaque fois ?
Très cordialement
Partager