Identification en fonction des valeurs saisies

Résolu/Fermé
Loic_7447 Messages postés 49 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 17 novembre 2020 - 9 nov. 2020 à 16:05
Loic_7447 Messages postés 49 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 17 novembre 2020 - 17 nov. 2020 à 07:17
Bonjour à tous,

J'ai un formulaire d'identification "fIdentification" avec deux champs "ID" et "MDP", ainsi qu'un bouton.
En rentrant un identifiant et un mot de passe, puis en cliquant sur le bouton, un code vient vérifier dans une table "tIdentification" (avec trois champs "Nom", "Prénom" et "Accessibilité") si ils correspondent à une ligne.
Si ils sont corrects, le formulaire "#Menu_principal" s'ouvre.

J'aimerai compléter cette identification en ouvrant des formulaires différents en fonction de la valeur d' "Accessibilité".

Je suppose qu'il faut créer un autre code, mais je ne sais pas quoi mettre.

Merci d'avance pour votre aide !
A voir également:

5 réponses

yg_be Messages postés 22717 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 22 avril 2024 1 476
10 nov. 2020 à 08:32
bonjour,
peux-tu partager ton code?
1
Loic_7447 Messages postés 49 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 17 novembre 2020
10 nov. 2020 à 10:49
Private Sub Commande5_Click()

Me.Requery
Dim sql As String 'User_groupe
Dim rs As DAO.Recordset

sql = "SELECT * FROM tIdentification WHERE Nom = " & """" & Me.Id & """" & " AND Prenom =" & """" & Me.MDP & """" & "
Set rs = CurrentDb.OpenRecordset(sql)
If Not rs.EOF Then
  DoCmd.OpenForm "#Menu_principal"

Else
 MsgBox " Identifiant ou mot de passe incorrect ", vbInformation, "Connexion"
  'i = i + 1
End If

End Sub
0
yg_be Messages postés 22717 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 22 avril 2024 1 476
10 nov. 2020 à 12:18
un exemple:
Dim nomform As String
Select Case rs!accessibilite
    Case "a":
        nomform = "formulaire a"
    Case "b":
        nomform = "formulaire b"
    Case Else:
        nomform = "#Menu_principal"
End Select
DoCmd.OpenForm nomform
0
Loic_7447 Messages postés 49 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 17 novembre 2020
16 nov. 2020 à 11:29
Voici mon nouveau code avec ce que tu m'as conseillé :

Private Sub Commande5_Click()

Me.Requery
Dim sql As String
Dim rs As DAO.Recordset
Dim nomform As String

sql = "SELECT * FROM tIdentification WHERE Nom = " & """" & Me.Id & """" & " AND Prenom =" & """" & Me.MDP & """" & ";"
Set rs = CurrentDb.OpenRecordset(sql)

If Not rs.EOF Then
    Select Case rs!Accessibilité
        Case Is = 2:
            nomform = "#Menu_principal2"
        Case Else:
            nomform = "#Menu_principal"
    End Select
    DoCmd.OpenForm nomform
Else
 MsgBox " Identifiant ou mot de passe incorrect ", vbInformation, "Connexion"
End If

End Sub


Malheureusement, je n'arrive pas à le faire fonctionner, ni à voir mon erreur.
0
yg_be Messages postés 22717 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 22 avril 2024 1 476
16 nov. 2020 à 13:18
"je n'arrive pas à le faire fonctionner": que se passe-t-il?

quel est le type du champ Accessibilité?
bizarre ce
Is =
.
0
Loic_7447 Messages postés 49 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 17 novembre 2020
16 nov. 2020 à 14:12
Dans l'état actuel, il ouvre le formulaire "#Menu_principal" peut importe ce que l'on tape.
Le champ Accessibilité est de type numérique.
J'ai essayé avec plusieurs syntaxe :
case 2
,
case is = 2
... en m'aidant du support microsoft, mais j'arrivais toujours au même résultat.
0
yg_be Messages postés 22717 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 22 avril 2024 1 476
16 nov. 2020 à 14:20
as-tu affiché la valeur de
rs!Accessibilité
?
0
Loic_7447 Messages postés 49 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 17 novembre 2020 > yg_be Messages postés 22717 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 22 avril 2024
16 nov. 2020 à 15:49
Non, comment je peux faire ?
0
yg_be Messages postés 22717 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 22 avril 2024 1 476 > Loic_7447 Messages postés 49 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 17 novembre 2020
16 nov. 2020 à 15:51
tu peux ajouter après la ligne 17:
msgbox cstr(rs!Accessibilité) + "|"+ nomform
0
Loic_7447 Messages postés 49 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 17 novembre 2020 > yg_be Messages postés 22717 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 22 avril 2024
16 nov. 2020 à 16:10
Pour mon test, j'ai rentré deux lignes différents dans ma table, avec deux valeurs dans "accessibilité" différente, et peu importe ce que je rentre, ça m'affiche : 1; #Menu_principal".
Comment je peux permettre à
select case
de différencier les valeurs dans le champs "accessibilité" ?
0
yg_be Messages postés 22717 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 22 avril 2024 1 476 > Loic_7447 Messages postés 49 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 17 novembre 2020
16 nov. 2020 à 16:28
même si tu as 2 comme accessibilité pour les deux enregistrements de la table?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Loic_7447 Messages postés 49 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 17 novembre 2020
17 nov. 2020 à 07:17
MISE A JOUR : le problème venait de ma table "tIdentification".
Les deux identifiants étaient le même mot mais un en minuscule et l'autre et majuscules. Access ne faisait pas la différence entre les deux.

Mon problème est donc résolut, merci pour ton aide !
0