Petit problème de mot de passe

  • Initiateur de la discussion Initiateur de la discussion adi399
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

adi399

XLDnaute Occasionnel
Bonjour ou re le forum,

J'ai un petit problème:

voici mon code qui me perment de déverrouiller ma feuille après avoir taper un mot de passe "toto" ds ma userform.

Private Sub CommandButton1_Click()
If TextBox1.Text = "toto" Then 'mot de passe = toto
ActiveSheet.Unprotect 'ôter la protection
UserForm4.Hide ' fermer la userform
End If

J'ai mis en place différentes plages avec différents mot de passe sur ma feuille.(en utilisant outils/protection/permettre aux utilisateurs de modifier les plages.

Comment modifié mon code afin qu'il ne me déverrouille pas la feuille(qui n'a pas de mot de passe):ActiveSheet.Unprotect , mais une seul des plages que j'ai créer précedement?

merci!
 
Re : Petit problème de mot de passe

Bonjour Adi, bonjour le forum,

Je vois que tu as trouvé la parade à l'autre problème... Mais la protection des cellules se fait en deux étapes.
• le verrouillage des cellules à protéger
• la protection de l'onglet contenant ces cellules
Puisque tu ne veux pas ôter la protection de l'onglet, ôte leur verrouillage :
Code:
Private Sub CommandButton1_Click()
If TextBox1.Text = "toto" Then 'mot de passe = toto
    ActiveSheet.Unprotect 'ôter la protection
    Range("Ta_plage").Locked = False 'déverrouille la plage
    ActiveSheet.Protect 'remet la protection
End If
UserForm4.Hide ' fermer la userform
End If
 
Re : Petit problème de mot de passe

Merc Robert pour votre aide, malheureusement la première question n'est pas encore résolu...

Pour celle-ci, j'ai bien compris votre code.
Mais dois-je attribuer des mots de passe? car j'ai une erreur au niveau de Range("Ta_plage").Locked = False 'déverrouille la plage

actuellement j'ai un mot de passe pour "ta_plage" et un autre pour l'onglet...
 
Re : Petit problème de mot de passe

Bonjour Adi, bonjour le forum,

Tu vois le temps qu'on perd sans fichier exemple...
D'après ce que j'ai compris tu demandes dans à l'utilisateur via une UserForm de saisir un mot de passe pour dévérouiller une plage.
Il y a donc deux mot de passe : celui correspondant à la plage (toto) et celui de la protection de l'onglet (par exemple : protonglet). L'utilisateur ne connaît pas celui de l'onglet mais il est censé connaître et renseigner celui de la plage... C'est bien ça ?
Dans ce cas le code serait :
Code:
[FONT=monospace]Private Sub CommandButton1_Click()
If TextBox1.Text = "toto" Then 'mot de passe = toto
    ActiveSheet.Unprotect Password:="protonglet"'ôter la protection
    Range("Ta_plage").Locked = False 'déverrouille la plage
    ActiveSheet.Protect Password:="protonglet"'remet la protection
End If
UserForm4.Hide ' fermer la userform
End If
[/FONT]
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
531
Réponses
5
Affichages
808
Compte Supprimé 979
C
Réponses
4
Affichages
872
Réponses
6
Affichages
688
Retour