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 !

marleauc

XLDnaute Occasionnel
Bonjour,

Je sollicite votre assistance car je suis bloqué, comment puis-je ajouter a mon userform une formule pour changer un mot de passe existant sans toujours aller dans visual basic

voici mon code
Private Sub UserForm_Initialize()
Me.TextBox1.Value = ""
MdpAdm = "1234"
End Sub
merci bcp
 
Re : mot de passe

Bonjour marleauc,

Ben... mettez le mot de passe en cellule A1 de Feuil1 (CodeName)

Code:
Private Sub UserForm_Initialize()
 Me.TextBox1.Value = ""
 MdpAdm = Feuil1.[A1]
 End Sub
Mais ainsi il y a d'autres soucis 🙄

A+
 
Re : mot de passe

Re, salut David, Marc 🙂

Notre ami veut probablement ceci dans le code de l'USF :

Code:
Option Explicit
Dim MdpAdm 'mémorisation pour utilisation ultérieure

Private Sub UserForm_Initialize()
Dim mdp&
Me.TextBox1.Value = ""
MdpAdm = "1234"
If MsgBox("Modifier le mot de passe ?", 4) = 7 Then Exit Sub
If InputBox("Ancien mot de passe :") <> MdpAdm Then Exit Sub
mdp = InputBox("Nouveau mot de passe :")
If InputBox("Répétez le mot de passe :") <> mdp Then Exit Sub
MdpAdm = mdp
ModifierMacro "MdpAdm = """ & MdpAdm & """"
End Sub

Sub ModifierMacro(texte$)
Dim LigneDebut&
With ThisWorkbook.VBProject.VBComponents("UserForm1").CodeModule
  LigneDebut = .ProcBodyLine("UserForm_Initialize", 0)
  .DeleteLines LigneDebut + 3, 1
  .InsertLines LigneDebut + 3, texte
End With
End Sub
Attention : il y a une case à cocher ("Faire confiance au projet VBA...") quelque part.

Si le code ne fonctionne pas et que vous ne trouvez pas cette case dites-le en indiquant votre version Excel.

Fichier joint.

A+
 

Pièces jointes

Re : mot de passe

Re,

Bon pour vous éviter de chercher en vain la fameuse case à cocher :

- sur Excel 2010 il faut avoir coché l'option Accès approuvé au modèle d'objet du projet VBA (onglet Fichier-Options-Centre de gestion de la confidentialité-Paramètres...-Paramètres des macros)

- sur Excel 2003 il faut avoir coché l'option Faire confiance au projet Visual Basic (menu Outils-Macro-Sécurité-Editeurs approuvés).

A+
 
Re : mot de passe

Bonjour le fil, le forum,

On aura peut-être remarqué ce qui se passe avec la variable Public MdpAdm.

Après modification du code VBA cette variable est systématiquement vidée ("").

Pour la réinitialiser correctement il faut utiliser Application.OnTime.

Voyez ces macros dans Module1 :

Code:
Sub Init()
MdpAdm = "1234"
End Sub

Sub ModifierMacro(texte$)
Dim LigneDebut&
With ThisWorkbook.VBProject.VBComponents("Module1").CodeModule
  LigneDebut = .ProcBodyLine("Init", 0)
  .DeleteLines LigneDebut + 1, 1
  .InsertLines LigneDebut + 1, texte
  Application.OnTime Now, "Init" 'pour mettre à jour MdpAdm
End With
End Sub

Sub Verif()
'touches Ctrl+M
MsgBox MdpAdm, , "MdpAdm"
End Sub
Fichier (6).

Edit : ah j'oubliais, l'instruction End vide toutes les variables, donc ne pas l'utiliser :

Code:
If TextBox1 <> MdpAdm Then Unload Me: Exit Sub 'pas End
A+
 

Pièces jointes

Dernière édition:
Re : mot de passe

Bonjour marleauc, le forum,

penses-tu que cela serait plus facile d'ajouter tout simplement un bouton dans usf_Mdp de la feuille Bigbrother qui nous permettrait de modifier le mot de passe

On fait ce que l'on veut, tout dépend de la portée du mot de passe.

S'il s'agit du mot de passe de l'Administrateur, sa modification doit lui être réservée, il est alors peu souhaitable de montrer à tout le monde qu'on peut le modifier.

Sur votre fichier l'USF peut être ouvert par tout le monde, chaque utilisateur a-t-il son propre mot de passe ?

Si oui il faut évidemment stocker quelque part les différents mots de passe.

A+
 
Dernière édition:
- 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
17
Affichages
876
Réponses
6
Affichages
638
Réponses
2
Affichages
618
Retour