Gestion utilisateur sous VBA

touwhite

XLDnaute Nouveau
Bonjour à tous.
J'aimerais savoir si il est possible de créer une gestion utilisateurs sous VBA, ou au moins en "simuler" une?
Je dois réaliser un IHM utilisable par 2 types de personnes, ces 2 personnes ne devant pas avoir les mêmes autorisation.
Du type,

Demander le nom de l'utilisateur puis un mot de passe puis
"If utilisateur=1 and mot de passe=2 Then bouton.show"

Est-ce possible, si oui comment?
Merci d'avance
 

Papou-net

XLDnaute Barbatruc
Re : Gestion utilisateur sous VBA

Bonsoir touwhite, et bienvenue,

Bien sûr que c'est possible, voici un exemple en pièce jointe.

Je ne connais pas ton niveau en VBA, mais si tu as besoin d'éclaircissements, n'hésite pas à demander.

Espérant avoir répondu.

Cordialement.
 

Pièces jointes

  • touwhite.xls
    29.5 KB · Affichages: 667
Dernière édition:

touwhite

XLDnaute Nouveau
Re : Gestion utilisateur sous VBA

Merci à vous.
Je débute tout juste en VBA. J'ai réaliser un IHM sous TIA Siemens, et j'aimerais le représenter sous VBA pour une présentation. Je débute donc tout juste sous ce logiciel!!
Papou-net, comment dois-je faire pour ouvrir l'application sous vba et non la fenetre que tu as créés ??
Merci encore
 

Papou-net

XLDnaute Barbatruc
Re : Gestion utilisateur sous VBA

Merci à vous.
Je débute tout juste en VBA. J'ai réaliser un IHM sous TIA Siemens, et j'aimerais le représenter sous VBA pour une présentation. Je débute donc tout juste sous ce logiciel!!
Papou-net, comment dois-je faire pour ouvrir l'application sous vba et non la fenetre que tu as créés ??
Merci encore

Bonsoir touwhite,

Je suppose que tu veux dire comment lancer VBA ?

Dans ce cas, tu appuies sur ALT & F11, ce qui aura pour effet de lancer l'éditeur Visual Basic. Dans la fenêtre de gauche, tu trouveras le projet attaché à ton fichier (il porte le même nom) et comprends l'ensemble des objets qui y sont définis : les feuilles du classeur, la fenêtre qui s'ouvre à l'ouverture du fichier, les modules de code (macros), etc... Si tu double-cliques sur l'une de ces lignes, la fenêtre de droite affichera l'ensemble du code attaché à cet objet.

Espérant avoir répondu.

Cordialement.
 

touwhite

XLDnaute Nouveau
Re : Gestion utilisateur sous VBA

J'ai réussi à l'integrer à mon programme. Seulement, je ne comprends pas vraiment la logique.
J'aimerais que sur ma page d'accueil IHM, un "bouton 1" s'affiche lorsque "l'utilisateur 1" se connecte, et un "bouton 2" pour"l'utilisateur 2".
Je n'y arrive pas et j'aimerais quelques conseils.
Ou en dernier recours, est-il possible que je vous envoie mon programme pour que vous jetiez un oeil par vous-même ?
Merci beaucoup
 

Staple1600

XLDnaute Barbatruc
Re : Gestion utilisateur sous VBA

Bonjour


Je te conseille de déclarer tes variables
(c'est parfois source de problème, quand elles ne le sont pas)

Exemple ici:
Code:
Private Sub UserForm_Activate()
Dim i As Byte, Nom, MdP
Nom = Array("Opérateur", "Maintenance")
MdP = Array("opérateur", "maintenance")
ComboBox1.Clear
For i = 0 To UBound(Nom)
  ComboBox1.AddItem Nom(i)
Next
End Sub
 

Papou-net

XLDnaute Barbatruc
Re : Gestion utilisateur sous VBA

Bonsoir touwhite, Staple1600,

RE touwhite,

Peux-tu me préciser ce que tu entends (dans ton MP) par boutons 1 et 2 ?

Sont-ils déjà créés sur le formulaire Accueil ?

Par ailleurs, où as-tu stocké les mots de passe, je ne les ai pas trouvés.

Dans l'attente de ta réponse.

Cordialement.
 

touwhite

XLDnaute Nouveau
Re : Gestion utilisateur sous VBA

Bonjour,
Les Mots de passe sont stockés dans le userforme Utilisateurs.
Les 2 boutons sont les boutons "cycle manu"
Le bouton 1 "cycle manu fabrication" s'affiche lorsque l'opérateur est enregistré et de même pr le 2e.

Merci
Cordialement
 

Papou-net

XLDnaute Barbatruc
Re : Gestion utilisateur sous VBA

Bonsoir touwhite,

Alors, si j'ai bien compris ta demande, modifie le code de l'userform Utilisateurs comme suit :

Code:
Private Sub ComboBox1_Change()
Choix = ComboBox1.ListIndex
End Sub

Private Sub CommandButton1_Click()
Accueil.bouton_opérateur.Visible = False
Accueil.bouton_maintenance.Visible = False
If TextBox1 = MdP(Choix) Then
  Accueil.Controls("bouton_" & MdP(Choix)).Visible = True
  Utilisateurs.Hide
  Else
  MsgBox "Mot de passe non valide ! Veuillez recommencer, svp.", vbOKOnly, "ERREUR MOT DE PASSE"
End If
End Sub

Private Sub CommandButton2_Click()
Utilisateurs.Hide
End Sub

Private Sub UserForm_Activate()
Nom = Array("Opérateur", "Maintenance")
MdP = Array("opérateur", "maintenance")

Accueil.bouton_opérateur.Visible = False
Accueil.bouton_maintenance.Visible = False
ComboBox1.Clear
For i = 0 To UBound(Nom)
  ComboBox1.AddItem Nom(i)
Next

End Sub

Espérant avoir répondu.

Cordialement.
 

Discussions similaires

Statistiques des forums

Discussions
315 228
Messages
2 117 555
Membres
113 191
dernier inscrit
grazazura