gestion des mots de passe utilisateurs

pat17

XLDnaute Junior
Bonjour forum

voilà mon problème,pour pouvoir faire une réservation l'utilisateur doit s'identifier par le biais d'un userform qui lui demande son nom et son mot de passe.
le nom est stocké dans la feuille "params" colonne A et le mot de passe dans la colonne F de la même feuille.
j'ai bien réussi à faire le lien pour la liste déroulante des noms mais je n'arrive pas à faire une vérification après saisie du mot de passe.

merci de votre aide

fichier joint
Cijoint.fr - Service gratuit de dépôt de fichiers
 

sousou

XLDnaute Barbatruc
Re : gestion des mots de passe utilisateurs

Bonjour
Une solution qui vérifie le code au moment de la validation.

Private Sub BnValider_Click()
Dim user, codeuser
If Me.CodeUtilisateur.Value = "" Then
ModeUtil = True
Else
ModeUtil = False
End If
Me.Hide
user = ComboNomUtilisateur.ListIndex
codeuser = ThisWorkbook.Sheets("params").Range("f2").Offset(user, 0)
If codeuser <> CodeUtilisateur Then
MsgBox "Erreur de code"
Exit Sub
End If
End Sub
 

pat17

XLDnaute Junior
Re : gestion des mots de passe utilisateurs

bonjour sousou et le forum,

merci sousou pour ta rapidité, j'ai essayé ton morceau de code mais quand je saisie le mot de passe il affiche "erreur de code" alors que le code est bon et il ne démarre pas le formulaire de réservation.

Bonne journée et bon courage
 

pat17

XLDnaute Junior
Re : gestion des mots de passe utilisateurs

bonjour et merci fhoest
J'ai résolu le problème en partie,ca marche sauf que lorsque tu t'es identifié une première fois il ne te demande plus de mot de passe et tu peux créer une réservation ou supprimer sans identification.Je pense que c'est un problème d'initialisation en sortie.
Par contre je souhaiterai que la personne qui s'identifie ne puisse consulter que ce qui le concerne lors de la suppression de réservation. cette information est stockée dans la feuille "data" peux tu m'aider

bon courage et bonne journée

fichier joint
Cijoint.fr - Service gratuit de dépôt de fichiers
 

fhoest

XLDnaute Accro
Re : gestion des mots de passe utilisateurs

RE,
essai ceci:
Code:
Private Sub BnValider_Click()
  If Me.CodeUtilisateur = Sheets("Params").Cells(Me.ComboNomUtilisateur.ListIndex + 2, 6) Then
    MsgBox "Le mot de passe est correct"
    ModeUtil = True
Unload Me  
Else
    MsgBox "Le mot de passe n'est pas correct," & vbCrLf & "veuillez réessayer"
    ModeUtil = False
  With CodeUtilisateur
  .SetFocus
  .Value = ""
  End With
  End If
  '
End Sub
A+
 
Dernière édition:

pat17

XLDnaute Junior
Re : gestion des mots de passe utilisateurs

Re,

j'ai essayé ton bout de code mais il ne se passe rien quand je clique sur valider et il m'affiche le formulaire quand je clique sur annuler.
Sans vouloir abuser, serait il possible de pouvoir valider aussi avec la touche enter du clavier.

A+
 

pat17

XLDnaute Junior
Re : gestion des mots de passe utilisateurs

Le problème est résolu par contre serait il possible de récupérer le nom utilisateur de poste saisie dans la boite pour alimenter le champ dans le userform de réservation et de suppression.

A+
 

pat17

XLDnaute Junior
Re : gestion des mots de passe utilisateurs

bonjour fhoest et merci pour ta réponse,

Effectivement je récupère bien le nom utilisateur pour la réservation mais cela ne semble pas fonctionner pour la suppression.

De plus, après la réservation j'ai une erreur de compilation variable non définie quand je veux consulter une salle.

Je suis entrain de regarder.

A+
 

fhoest

XLDnaute Accro
Re : gestion des mots de passe utilisateurs

Bonsoir,
c'est ici que tu dois mettre le code dans le fSuppReserv:
Code:
Private Sub UserForm_Initialize()
    Dim Cell As Range
    With Sheets("Params")
        For Each Cell In .Range("A2:A" & .Range("A65536").End(xlUp).Row)
        ComboNom.AddItem (Cell)
        Next
        For Each Cell In .Range("B2:B" & .Range("B65536").End(xlUp).Row)
        ComboDate.AddItem (Cell)
        Next
    End With
    
     With lstResultat.ColumnHeaders
        'Supprime les anciens entêtes
        .Clear

        'Ajoute les colonnes
        .Add Text:="No", Width:=0
        .Add Text:="Salle", Width:=100
        .Add Text:="HeureDebut", Width:=60
        .Add Text:="HeureFin", Width:=60
        .Add Text:="Plage", Width:=0
    End With
[COLOR="Red"]ComboNom.Value = nom_utilisateur_de_poste[/COLOR]
End Sub
A+
 

pat17

XLDnaute Junior
Re : gestion des mots de passe utilisateurs

bonjour fhoest et le forum,

effectivement cela fonctionne :D

Par contre, j'ai une erreur de compilation à la ligne 20 et 132 du module 1 que je ne comprend pas :(
lorsque je veux visualiser une salle par exemple ou supprimer un objet

merci pour ton aide et bonne journée
 
Dernière édition:

fhoest

XLDnaute Accro
Re : gestion des mots de passe utilisateurs

Bonjour,
c'est ereur sont courante,en fait pour chaque variable que tu insère dans un programme ,il vaut mieux apprendre a les définirent au début de chaque sub ou tu va les utilisé sauf dans le cas ou tu as besoins de ces valeurs dans plusieurs sub,
en l'occurrence pour ton erreur dans le modules 1:
Code:
Sub SupprimerUnObjet()
  Dim Réponse As Integer
dimensionner la variable est indispensable pour le bon fonctionnement du code
même chose pour ceci
Code:
Sub AccèsAlaFeuille()
  Dim NomObj As String, NomFeuille As String
  Dim Réponse As Integer
si tu veux ,tu peux simplement écrire :
Code:
Sub AccèsAlaFeuille()
 [COLOR="Red"] Dim NomObj , NomFeuille As String[/COLOR]
  Dim Réponse As Integer
A +
 

pat17

XLDnaute Junior
Re : gestion des mots de passe utilisateurs

Bonjour fhoest et le forum,

J'ai fait les modifs que tu m'as données mais j'ai une erreur sur le module suivant

Code:
Sub PointageDateDuJour()
  Application.ScreenUpdating = False
  Range("A4").Select
  Do Until ActiveCell = ""
    If ActiveCell.Value = Date Then
      AdresseDateTrouvée = ActiveCell.Address
      GoTo DateTrouvée
    Else
      ActiveCell.Offset(1, 0).Activate
    End If
  Loop
  MsgBox "La date d'aujourdhui ne figure pas dans l'onglet de gestion de cette Objet"
  Application.GoTo Reference:=Worksheets(ActiveSheet.Name).Range("A1"), Scroll:=True
  Exit Sub
DateTrouvée:
  Application.GoTo Reference:=Worksheets(ActiveSheet.Name).Range(AdresseDateTrouvée), Scroll:=True
End Sub

pourquoi :confused:

merci de ton aide
 

Discussions similaires

Réponses
5
Affichages
392
Compte Supprimé 979
C
Réponses
2
Affichages
153
Réponses
4
Affichages
612

Statistiques des forums

Discussions
312 151
Messages
2 085 783
Membres
102 973
dernier inscrit
docpod