Protéger toutes les feuilles...

Anonyme
2012-06-15T14:40:29+00:00

Bonjour,

Sous Excel 2003 - Windows XP :

Comment faire pour protéger avec mot de passe et en une seule opération toutes les feuilles de calcul d'un même classeur ?  Évidemment, pouvoir aussi "déprotéger" tout aussi rapidement toutes les feuilles ?  J'aimerais que le mot de passe soit demandé lors de la protection comme lors de la "déprotection".

Probablement en VBA mais... je ne m'y connais pas beaucoup !  Alors, un exemple de code serait apprécié et, surtout, à quel endroit inscrire le code VBA dans la fenêtre VBA ?

Note : Le classeur en question contient déjà 50 feuilles pour lesquelles des formules avec liaison existent entre plusieurs.  De plus, plusieurs autres codes (VBA - Macros) existent déjà dans ce classeur.

Merci à qui pourrait m'aider,

Normand

Microsoft 365 et Office | Excel | Pour la maison | Windows

Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.

0 commentaires Aucun commentaire

13 réponses

  1. Supprimé

    Cette réponse a été supprimée en raison d’une violation de notre Code de conduite. La réponse a été signalée manuellement ou identifiée via la détection automatisée avant que l’action ne soit entreprise. Pour obtenir plus d’informations, veuillez consulter notre Code de conduite.


    Les commentaires ont été désactivés. En savoir plus

  2. Anonyme
    2012-06-16T12:59:38+00:00

    Bonjour Daniel,

    Gros merci... la protection et la "déprotection" fonctionne. 

    Cependant, je me rends compte, à l'usage, qu'il serait préférable que la protection soit applicable selon la même procédure que la "déprotection" soit simplement en exécutant une macro après l'ouverture du classeur.  En fait, plutôt que de voir, dès l'ouverture du classeur, le message demandant le mot de passe pour protéger, j'aimerais mieux que le classeur s'ouvre "normalement" (sans demander le mot de passe de protection et sans qu'il soit protégé automatiquement).

    Une fois ouvert, l'usager pourrait décider d'utiliser le classeur normalement ou lui appliquer la protection (avec mot de passe) en exécutant la macro pour protéger.

    Petit souci actuel en utilisant la macro pour déprotéger :  Actuellement, lorsqu'on exécute la macro pour déprotéger (et après avoir inscrit le mot de passe), un "message d'erreur" de VBA apparaît.  Ce message indique seulement "400" !  Mais, en cliquant sur OK à ce message, les feuilles sont effectivement toutes déprotégées.  Donc... qu'est-ce que ce message "400"  de VBA ?

    Alors, en résumé :

    1.- Ne pas avoir le message de protection (mot de passe) à l'ouverture du classeur mais seulement pouvoir protéger au besoin, après l'ouverture du classeur (un peu comme pour la "déprotection").

    2.- Comment éliminer le message "400" de VBA après la "déprotection" ?

    Très sincèrement, encore un GROS MERCI pour ton aide.  Les procédures actuelles sont OK (malgré le message "400") mais s'il est possible de les modifier comme demandé cela serait parfait.  Sinon... c'est OK quand même !

    Normand

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  3. Supprimé

    Cette réponse a été supprimée en raison d’une violation de notre Code de conduite. La réponse a été signalée manuellement ou identifiée via la détection automatisée avant que l’action ne soit entreprise. Pour obtenir plus d’informations, veuillez consulter notre Code de conduite.


    Les commentaires ont été désactivés. En savoir plus

  4. Anonyme
    2012-06-15T17:29:55+00:00

    Bonjour Daniel,

    D'abord merci pour ces bouts de codes.  Ce que je comprends dans leur fonctionnement c'est que :

    1.- La protection des feuilles est automatiquement active lorsque le classeur s'ouvre.

    2.- Pour "déprotéger" les feuilles il faut exécuter la macro "déprotéger".

    Est-ce bien cela ? Si oui alors il y a un petit problème et je crois quelques infos supplémentaires nécessaires...

    a)  Les feuilles sont effectivement protégées dès l'ouverture du classeur mais, aucun mot de passe n'est demandé pour activer la protection. 

    En fait, ce que j'aimerais, c'est que l'exécution du code permettant la protection se fasse seulement "à la demande" c.a.d. qu'une fenêtre s'ouvre demandant le mot de passe pour protéger toutes les feuilles en même temps.

    b) Actuellement, lorsque j'exécute la macro "déprotéger" pour désactiver la protection, aucun mot de passe n'est demandé (j'aimerais aussi avoir la fenêtre pour en inscrire un...) et je reçois la fenêtre "Débogage" d'Excel avec la mention Erreur d'exécution '1004'.  Cependant, après ce message, la "déprotection" est pourtant appliquée !

    En résumé... la protection de toutes les feuilles fonctionne mais sans demander de mot de passe.  La "déprotection" fonctionne aussi mais sans mot de passe et le message d'erreur (débogage) apparaît.

    Note : J'ai fait bien attention de placer les codes aux endroits mentionnés... aurais-je malgré tout fait une erreur ?

    Merci encore si tu peux me guider davantage.

    Normand

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  5. Supprimé

    Cette réponse a été supprimée en raison d’une violation de notre Code de conduite. La réponse a été signalée manuellement ou identifiée via la détection automatisée avant que l’action ne soit entreprise. Pour obtenir plus d’informations, veuillez consulter notre Code de conduite.


    Les commentaires ont été désactivés. En savoir plus