IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Problème protection par mot de passe en VBA [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Problème protection par mot de passe en VBA
    Bonjour à tous,

    Je suis en train de créer un formulaire qui permet d'accéder à une feuille spécifique du fichier en fonction de choix fait dans des listbox. Une fois le choix effectuer un bouton apparaît et il permet d'ouvrir la feuille concernée.
    A l'ouverture, je peux choisir :
    - un mode utilisateur pour lequel tous les onglets sont masqués et chaque feuille protégé (pour que seules les cellules à remplir soient modifiables). Pour accéder à chaque feuille, il faut faire une selection dans un userform.
    - un mode administrateur, qui déverrouille chaque feuille et fait apparaître tous les onglets.
    Mon problème est le suivant.
    En mode utilisateur (tout verrouillé), pour pouvoir accéder aux feuilles masquées, je dois déverrouiller la feuille concernée en début de procédure et la reverrouiller en fin de procédure. Cependant, une erreur survient:
    Nom : erreur 1004.PNG
Affichages : 258
Taille : 16,8 Ko
    et le Debug m'amène sur la ligne de déverrouillage.
    Voici le code en question:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    Private Sub CommandButton1_Click()
     
    Dim Mdp As String
    Mdp = "Mon_Mot_De_Passe"
     
    'Ouvre la feuille à remplir
    If Label2.Caption <> "" Then
        ThisWorkbook.Sheets(Label2.Caption).UnProtect Mdp 'devrait déverrouiller la feuille sélectionner
        ThisWorkbook.Sheets(Label2.Caption).Visible = True
        ThisWorkbook.Sheets(Label2.Caption).Select
        UserForm1.Hide
        ActiveSheet.Range("c4").Select
        ThisWorkbook.Sheets(Label2.Caption).Protect Mdp 'devrait reverrouiller la feuille une fois la procédure terminée
    End If
     
    End Sub
    Sachant que j'utilise Mdp pour verrouiller et déverrouiller, je ne comprends pas qu'il considère que le mot de passe est incorrect
    De plus, une fois mon document verrouillé par VBA, si j'essaye de déverrouiller une feuille manuellement en passant par le bandeau Excel, en utilisant "Mon_Mot_De_Passe", ça ne fonctionne pas...

    Quelqu'un saurait-il m'expliquer d'où vient mon erreur?

    D'avance merci pour votre aide!

  2. #2
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Bonjour, bonjour !

    Le message d'erreur est pourtant clair :  le mot de passe est juste erroné, il ne correspond pas à celui validé lors de la protection !

    Pour le reste j'en reste là vu le code incomplet.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour Marc-L,

    Merci pour ta réponse.
    Ceci dit, le mot de passe ne peut pas être erroné dans la mesure où j'utilise le même "Mdp" dans les différents bouts de code que j'utilise...

    Respect et robustesse

  4. #4
    Membre Expert

    Homme Profil pro
    Technicien Métrologie R&D
    Inscrit en
    Janvier 2007
    Messages
    1 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Métrologie R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 610
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     ThisWorkbook.Sheets(Label2.Caption).UnProtect password:=Mdp
    essaies ceci

  5. #5
    Invité
    Invité(e)
    Par défaut
    Merci Daranc, je vais essayer

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JMX Console]Protection par mot de passe
    Par Thomas_ats dans le forum Wildfly/JBoss
    Réponses: 1
    Dernier message: 16/04/2007, 17h50
  2. [Cookies] Variables sessions protection par mot de passe
    Par luciedoudou dans le forum Langage
    Réponses: 17
    Dernier message: 24/01/2007, 11h20
  3. Activer la protection par mot de passe sur l'écran de veille
    Par Raphs dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 23/11/2006, 16h36
  4. protection par mot de passe projet
    Par largowinch dans le forum EDI/Outils
    Réponses: 2
    Dernier message: 19/10/2006, 21h16
  5. Protection par mot de passe
    Par BigZ444 dans le forum Delphi
    Réponses: 2
    Dernier message: 12/05/2006, 21h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo