Bonjour
Je voudrais créer un formulaire d'accueil qui demande à l'utilisateur de
s'identifier (liste déroulante des utilisateurs) et un mots de passe. Si ces
informations sont justes, après avoir cliqué sur le bouton, l'utilisateur à
accès aux autres formulaire. J'ai créé dans une des tables, un champ "nom
d'utilisateur" et "Mot de passe". Quel est le code qui me pertmettra de faire
ça et est-ce que je le place au niveau du bouton d'ouverture des autres
formulaires ?
--
Merci de votre aide
Leyley39
Bonjour
Je voudrais créer un formulaire d'accueil qui demande à l'utilisateur de
s'identifier (liste déroulante des utilisateurs) et un mots de passe. Si ces
informations sont justes, après avoir cliqué sur le bouton, l'utilisateur à
accès aux autres formulaire. J'ai créé dans une des tables, un champ "nom
d'utilisateur" et "Mot de passe". Quel est le code qui me pertmettra de faire
ça et est-ce que je le place au niveau du bouton d'ouverture des autres
formulaires ?
--
Merci de votre aide
Leyley39
Bonjour
Je voudrais créer un formulaire d'accueil qui demande à l'utilisateur de
s'identifier (liste déroulante des utilisateurs) et un mots de passe. Si ces
informations sont justes, après avoir cliqué sur le bouton, l'utilisateur à
accès aux autres formulaire. J'ai créé dans une des tables, un champ "nom
d'utilisateur" et "Mot de passe". Quel est le code qui me pertmettra de faire
ça et est-ce que je le place au niveau du bouton d'ouverture des autres
formulaires ?
--
Merci de votre aide
Leyley39
Bonjour
j'ai utlisé ce code pour créer un formulaire logon. Mais il m'indique qu'il
manque un Do à la loop.
Private Sub Entrerr_Click()
Dim Rs As DAO.Recordset
Dim Reconnu As Boolean
Reconnu = False
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
MsgBox "Ok"
Reconnu = True
Exit Do
Else
MsgBox "Erreur de mot de passe"
GoTo Fin
End If
Rs.MoveNext
Loop
If Reconnu = False Then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
GoTo Fin
End If
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Menu Général "
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
Fin:
End Sub
Où est mon erreur ?
Bonjour
j'ai utlisé ce code pour créer un formulaire logon. Mais il m'indique qu'il
manque un Do à la loop.
Private Sub Entrerr_Click()
Dim Rs As DAO.Recordset
Dim Reconnu As Boolean
Reconnu = False
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
MsgBox "Ok"
Reconnu = True
Exit Do
Else
MsgBox "Erreur de mot de passe"
GoTo Fin
End If
Rs.MoveNext
Loop
If Reconnu = False Then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
GoTo Fin
End If
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Menu Général "
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
Fin:
End Sub
Où est mon erreur ?
Bonjour
j'ai utlisé ce code pour créer un formulaire logon. Mais il m'indique qu'il
manque un Do à la loop.
Private Sub Entrerr_Click()
Dim Rs As DAO.Recordset
Dim Reconnu As Boolean
Reconnu = False
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
MsgBox "Ok"
Reconnu = True
Exit Do
Else
MsgBox "Erreur de mot de passe"
GoTo Fin
End If
Rs.MoveNext
Loop
If Reconnu = False Then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
GoTo Fin
End If
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Menu Général "
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
Fin:
End Sub
Où est mon erreur ?
Bonjour,
Non il manque un End If à positionner avant ou aprés le 1er End If
et tu peux remplacer tes Goto Fin par des Exit Sub
Dim Rs As DAO.Recordset
Dim Reconnu As Boolean
Reconnu = False
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
MsgBox "Ok"
Reconnu = True
Exit Do
Else
MsgBox "Erreur de mot de passe"
GoTo Fin
End If
End If ' <= Le End If qui manque ***
Rs.MoveNext
Loop
If Reconnu = False Then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
GoTo Fin
End If
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Menu Général "
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
Fin:
End Sub
Bonjour,
Non il manque un End If à positionner avant ou aprés le 1er End If
et tu peux remplacer tes Goto Fin par des Exit Sub
Dim Rs As DAO.Recordset
Dim Reconnu As Boolean
Reconnu = False
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
MsgBox "Ok"
Reconnu = True
Exit Do
Else
MsgBox "Erreur de mot de passe"
GoTo Fin
End If
End If ' <= Le End If qui manque ***
Rs.MoveNext
Loop
If Reconnu = False Then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
GoTo Fin
End If
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Menu Général "
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
Fin:
End Sub
Bonjour,
Non il manque un End If à positionner avant ou aprés le 1er End If
et tu peux remplacer tes Goto Fin par des Exit Sub
Dim Rs As DAO.Recordset
Dim Reconnu As Boolean
Reconnu = False
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
MsgBox "Ok"
Reconnu = True
Exit Do
Else
MsgBox "Erreur de mot de passe"
GoTo Fin
End If
End If ' <= Le End If qui manque ***
Rs.MoveNext
Loop
If Reconnu = False Then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
GoTo Fin
End If
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Menu Général "
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
Fin:
End Sub
Merci pour votre aide à tous les deux
J'ai ajouté et modifié ce que tu m'as dit Michel_D mais il semblerait
que j'ai encore une erreur. Si je fait exécuter le code, il ouvre la
fenêtre macro (qui est vide soit dit en passant). Dois-je créer une
macro ? Laquelle ?
Fabien, j'ai essayé ton code. Il me dit qu'il manque une ) ou un
séparateur d'expression sur la première ligne. Comme je suis débutant
en VBA, je ne vois pas où ça pourrait être. Est-ce des guillemets que
tu as mis ou des apostrophe dans le code. C'est un peu petit, je ne
vois pas toujours combien il y en a.
Mais merci, j'avance tout doucement et j'espère voir le bout du
tunnel.Bonjour,
Non il manque un End If à positionner avant ou aprés le 1er End If
et tu peux remplacer tes Goto Fin par des Exit Sub
Dim Rs As DAO.Recordset
Dim Reconnu As Boolean
Reconnu = False
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
MsgBox "Ok"
Reconnu = True
Exit Do
Else
MsgBox "Erreur de mot de passe"
GoTo Fin
End If
End If ' <= Le End If qui manque ***
Rs.MoveNext
Loop
If Reconnu = False Then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
GoTo Fin
End If
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Menu Général "
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
Fin:
End Sub
Merci pour votre aide à tous les deux
J'ai ajouté et modifié ce que tu m'as dit Michel_D mais il semblerait
que j'ai encore une erreur. Si je fait exécuter le code, il ouvre la
fenêtre macro (qui est vide soit dit en passant). Dois-je créer une
macro ? Laquelle ?
Fabien, j'ai essayé ton code. Il me dit qu'il manque une ) ou un
séparateur d'expression sur la première ligne. Comme je suis débutant
en VBA, je ne vois pas où ça pourrait être. Est-ce des guillemets que
tu as mis ou des apostrophe dans le code. C'est un peu petit, je ne
vois pas toujours combien il y en a.
Mais merci, j'avance tout doucement et j'espère voir le bout du
tunnel.
Bonjour,
Non il manque un End If à positionner avant ou aprés le 1er End If
et tu peux remplacer tes Goto Fin par des Exit Sub
Dim Rs As DAO.Recordset
Dim Reconnu As Boolean
Reconnu = False
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
MsgBox "Ok"
Reconnu = True
Exit Do
Else
MsgBox "Erreur de mot de passe"
GoTo Fin
End If
End If ' <= Le End If qui manque ***
Rs.MoveNext
Loop
If Reconnu = False Then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
GoTo Fin
End If
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Menu Général "
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
Fin:
End Sub
Merci pour votre aide à tous les deux
J'ai ajouté et modifié ce que tu m'as dit Michel_D mais il semblerait
que j'ai encore une erreur. Si je fait exécuter le code, il ouvre la
fenêtre macro (qui est vide soit dit en passant). Dois-je créer une
macro ? Laquelle ?
Fabien, j'ai essayé ton code. Il me dit qu'il manque une ) ou un
séparateur d'expression sur la première ligne. Comme je suis débutant
en VBA, je ne vois pas où ça pourrait être. Est-ce des guillemets que
tu as mis ou des apostrophe dans le code. C'est un peu petit, je ne
vois pas toujours combien il y en a.
Mais merci, j'avance tout doucement et j'espère voir le bout du
tunnel.Bonjour,
Non il manque un End If à positionner avant ou aprés le 1er End If
et tu peux remplacer tes Goto Fin par des Exit Sub
Dim Rs As DAO.Recordset
Dim Reconnu As Boolean
Reconnu = False
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
MsgBox "Ok"
Reconnu = True
Exit Do
Else
MsgBox "Erreur de mot de passe"
GoTo Fin
End If
End If ' <= Le End If qui manque ***
Rs.MoveNext
Loop
If Reconnu = False Then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
GoTo Fin
End If
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Menu Général "
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
Fin:
End Sub
Merci pour votre aide à tous les deux
J'ai ajouté et modifié ce que tu m'as dit Michel_D mais il semblerait que
j'ai encore une erreur. Si je fait exécuter le code, il ouvre la fenêtre
macro (qui est vide soit dit en passant). Dois-je créer une macro ? Laquelle ?
Fabien, j'ai essayé ton code. Il me dit qu'il manque une ) ou un séparateur
d'expression sur la première ligne. Comme je suis débutant en VBA, je ne vois
pas où ça pourrait être. Est-ce des guillemets que tu as mis ou des
apostrophe dans le code. C'est un peu petit, je ne vois pas toujours combien
il y en a.
Mais merci, j'avance tout doucement et j'espère voir le bout du tunnel.
Merci pour votre aide à tous les deux
J'ai ajouté et modifié ce que tu m'as dit Michel_D mais il semblerait que
j'ai encore une erreur. Si je fait exécuter le code, il ouvre la fenêtre
macro (qui est vide soit dit en passant). Dois-je créer une macro ? Laquelle ?
Fabien, j'ai essayé ton code. Il me dit qu'il manque une ) ou un séparateur
d'expression sur la première ligne. Comme je suis débutant en VBA, je ne vois
pas où ça pourrait être. Est-ce des guillemets que tu as mis ou des
apostrophe dans le code. C'est un peu petit, je ne vois pas toujours combien
il y en a.
Mais merci, j'avance tout doucement et j'espère voir le bout du tunnel.
Merci pour votre aide à tous les deux
J'ai ajouté et modifié ce que tu m'as dit Michel_D mais il semblerait que
j'ai encore une erreur. Si je fait exécuter le code, il ouvre la fenêtre
macro (qui est vide soit dit en passant). Dois-je créer une macro ? Laquelle ?
Fabien, j'ai essayé ton code. Il me dit qu'il manque une ) ou un séparateur
d'expression sur la première ligne. Comme je suis débutant en VBA, je ne vois
pas où ça pourrait être. Est-ce des guillemets que tu as mis ou des
apostrophe dans le code. C'est un peu petit, je ne vois pas toujours combien
il y en a.
Mais merci, j'avance tout doucement et j'espère voir le bout du tunnel.
Merci pour votre aide à tous les deux
J'ai ajouté et modifié ce que tu m'as dit Michel_D mais il semblerait que
j'ai encore une erreur. Si je fait exécuter le code, il ouvre la fenêtre
macro (qui est vide soit dit en passant). Dois-je créer une macro ? Laquelle ?
Fabien, j'ai essayé ton code. Il me dit qu'il manque une ) ou un séparateur
d'expression sur la première ligne. Comme je suis débutant en VBA, je ne vois
pas où ça pourrait être. Est-ce des guillemets que tu as mis ou des
apostrophe dans le code. C'est un peu petit, je ne vois pas toujours combien
il y en a.
Mais merci, j'avance tout doucement et j'espère voir le bout du tunnel.
--
Merci de votre aide
Leyley39
"Michel__D" a écrit :
> Bonjour,
>
> Non il manque un End If à positionner avant ou aprés le 1er End If
> et tu peux remplacer tes Goto Fin par des Exit Sub
>
>
> Dim Rs As DAO.Recordset
> Dim Reconnu As Boolean
> Reconnu = False
> Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
> Do While Not Rs.EOF
> If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
> If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
> MsgBox "Ok"
> Reconnu = True
> Exit Do
> Else
> MsgBox "Erreur de mot de passe"
> GoTo Fin
> End If
>
> End If ' <= Le End If qui manque ***
>
> Rs.MoveNext
> Loop
> If Reconnu = False Then
> MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
> GoTo Fin
> End If
> Dim stDocName As String
> Dim stLinkCriteria As String
>
> stDocName = "Menu Général "
> DoCmd.OpenForm stDocName, , , stLinkCriteria
>
> Exit_Entrerr_Click:
> Exit Sub
>
> Err_Entrerr_Click:
> MsgBox Err.Description
> Resume Exit_Entrerr_Click
>
> Fin:
> End Sub
Merci pour votre aide à tous les deux
J'ai ajouté et modifié ce que tu m'as dit Michel_D mais il semblerait que
j'ai encore une erreur. Si je fait exécuter le code, il ouvre la fenêtre
macro (qui est vide soit dit en passant). Dois-je créer une macro ? Laquelle ?
Fabien, j'ai essayé ton code. Il me dit qu'il manque une ) ou un séparateur
d'expression sur la première ligne. Comme je suis débutant en VBA, je ne vois
pas où ça pourrait être. Est-ce des guillemets que tu as mis ou des
apostrophe dans le code. C'est un peu petit, je ne vois pas toujours combien
il y en a.
Mais merci, j'avance tout doucement et j'espère voir le bout du tunnel.
--
Merci de votre aide
Leyley39
"Michel__D" a écrit :
> Bonjour,
>
> Non il manque un End If à positionner avant ou aprés le 1er End If
> et tu peux remplacer tes Goto Fin par des Exit Sub
>
>
> Dim Rs As DAO.Recordset
> Dim Reconnu As Boolean
> Reconnu = False
> Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
> Do While Not Rs.EOF
> If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
> If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
> MsgBox "Ok"
> Reconnu = True
> Exit Do
> Else
> MsgBox "Erreur de mot de passe"
> GoTo Fin
> End If
>
> End If ' <= Le End If qui manque ***
>
> Rs.MoveNext
> Loop
> If Reconnu = False Then
> MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
> GoTo Fin
> End If
> Dim stDocName As String
> Dim stLinkCriteria As String
>
> stDocName = "Menu Général "
> DoCmd.OpenForm stDocName, , , stLinkCriteria
>
> Exit_Entrerr_Click:
> Exit Sub
>
> Err_Entrerr_Click:
> MsgBox Err.Description
> Resume Exit_Entrerr_Click
>
> Fin:
> End Sub
Merci pour votre aide à tous les deux
J'ai ajouté et modifié ce que tu m'as dit Michel_D mais il semblerait que
j'ai encore une erreur. Si je fait exécuter le code, il ouvre la fenêtre
macro (qui est vide soit dit en passant). Dois-je créer une macro ? Laquelle ?
Fabien, j'ai essayé ton code. Il me dit qu'il manque une ) ou un séparateur
d'expression sur la première ligne. Comme je suis débutant en VBA, je ne vois
pas où ça pourrait être. Est-ce des guillemets que tu as mis ou des
apostrophe dans le code. C'est un peu petit, je ne vois pas toujours combien
il y en a.
Mais merci, j'avance tout doucement et j'espère voir le bout du tunnel.
--
Merci de votre aide
Leyley39
"Michel__D" a écrit :
> Bonjour,
>
> Non il manque un End If à positionner avant ou aprés le 1er End If
> et tu peux remplacer tes Goto Fin par des Exit Sub
>
>
> Dim Rs As DAO.Recordset
> Dim Reconnu As Boolean
> Reconnu = False
> Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
> Do While Not Rs.EOF
> If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
> If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
> MsgBox "Ok"
> Reconnu = True
> Exit Do
> Else
> MsgBox "Erreur de mot de passe"
> GoTo Fin
> End If
>
> End If ' <= Le End If qui manque ***
>
> Rs.MoveNext
> Loop
> If Reconnu = False Then
> MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
> GoTo Fin
> End If
> Dim stDocName As String
> Dim stLinkCriteria As String
>
> stDocName = "Menu Général "
> DoCmd.OpenForm stDocName, , , stLinkCriteria
>
> Exit_Entrerr_Click:
> Exit Sub
>
> Err_Entrerr_Click:
> MsgBox Err.Description
> Resume Exit_Entrerr_Click
>
> Fin:
> End Sub
Bonjour,
"Leyley39" a écrit dans le message de
news:Merci pour votre aide à tous les deux
J'ai ajouté et modifié ce que tu m'as dit Michel_D mais il semblerait que
j'ai encore une erreur. Si je fait exécuter le code, il ouvre la fenêtre
macro (qui est vide soit dit en passant). Dois-je créer une macro ? Laquelle ?
Fabien, j'ai essayé ton code. Il me dit qu'il manque une ) ou un séparateur
d'expression sur la première ligne. Comme je suis débutant en VBA, je ne vois
pas où ça pourrait être. Est-ce des guillemets que tu as mis ou des
apostrophe dans le code. C'est un peu petit, je ne vois pas toujours combien
il y en a.
Mais merci, j'avance tout doucement et j'espère voir le bout du tunnel.
--
Merci de votre aide
Leyley39
"Michel__D" a écrit :Bonjour,
Non il manque un End If à positionner avant ou aprés le 1er End If
et tu peux remplacer tes Goto Fin par des Exit Sub
Dim Rs As DAO.Recordset
Dim Reconnu As Boolean
Reconnu = False
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
MsgBox "Ok"
Reconnu = True
Exit Do
Else
MsgBox "Erreur de mot de passe"
GoTo Fin
End If
End If ' <= Le End If qui manque ***
Rs.MoveNext
Loop
If Reconnu = False Then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
GoTo Fin
End If
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Menu Général "
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
Fin:
End Sub
Tu peux utiliser ceci :
Private Sub Entrerr_Click()
Dim Rs As DAO.Recordset
On Error Goto Err_Entrerr_Click
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value=me.Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value=me.CODE_ACCES.Value Then
MsgBox "Ok"
Exit Do
Else
MsgBox "Erreur de mot de passe"
Exit Sub
End If
Else
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
Exit Sub
End If
Rs.MoveNext
Loop
DoCmd.OpenForm "Menu Général "
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
End Sub
Ou cela (solution de Fabien modifié) :
Private enterr_click
If nz(dlookup("[Code acces]","PRO SMAEC","[Nom Utilisateur]='" & _
me.modifiable4 & "'"),"")<>"" then
MsgBox "Ok"
Docmd.openform "Menu Général"
else
if dcount("[Nom Utilisateur]","PRO SMAEC","[Nom Utilisateur]='" & _
me.modifiable4 & "'")=0 then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
else
MsgBox "Mot de passe incorrect !!"
end if
end if
end sub
PS:Attention je n'ai pas testé.
Bonjour,
"Leyley39" <Leyley39@discussions.microsoft.com> a écrit dans le message de
news:E21D9CD4-8E54-46C0-9D64-2F1696276DD7@microsoft.com...
Merci pour votre aide à tous les deux
J'ai ajouté et modifié ce que tu m'as dit Michel_D mais il semblerait que
j'ai encore une erreur. Si je fait exécuter le code, il ouvre la fenêtre
macro (qui est vide soit dit en passant). Dois-je créer une macro ? Laquelle ?
Fabien, j'ai essayé ton code. Il me dit qu'il manque une ) ou un séparateur
d'expression sur la première ligne. Comme je suis débutant en VBA, je ne vois
pas où ça pourrait être. Est-ce des guillemets que tu as mis ou des
apostrophe dans le code. C'est un peu petit, je ne vois pas toujours combien
il y en a.
Mais merci, j'avance tout doucement et j'espère voir le bout du tunnel.
--
Merci de votre aide
Leyley39
"Michel__D" a écrit :
Bonjour,
Non il manque un End If à positionner avant ou aprés le 1er End If
et tu peux remplacer tes Goto Fin par des Exit Sub
Dim Rs As DAO.Recordset
Dim Reconnu As Boolean
Reconnu = False
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
MsgBox "Ok"
Reconnu = True
Exit Do
Else
MsgBox "Erreur de mot de passe"
GoTo Fin
End If
End If ' <= Le End If qui manque ***
Rs.MoveNext
Loop
If Reconnu = False Then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
GoTo Fin
End If
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Menu Général "
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
Fin:
End Sub
Tu peux utiliser ceci :
Private Sub Entrerr_Click()
Dim Rs As DAO.Recordset
On Error Goto Err_Entrerr_Click
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value=me.Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value=me.CODE_ACCES.Value Then
MsgBox "Ok"
Exit Do
Else
MsgBox "Erreur de mot de passe"
Exit Sub
End If
Else
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
Exit Sub
End If
Rs.MoveNext
Loop
DoCmd.OpenForm "Menu Général "
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
End Sub
Ou cela (solution de Fabien modifié) :
Private enterr_click
If nz(dlookup("[Code acces]","PRO SMAEC","[Nom Utilisateur]='" & _
me.modifiable4 & "'"),"")<>"" then
MsgBox "Ok"
Docmd.openform "Menu Général"
else
if dcount("[Nom Utilisateur]","PRO SMAEC","[Nom Utilisateur]='" & _
me.modifiable4 & "'")=0 then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
else
MsgBox "Mot de passe incorrect !!"
end if
end if
end sub
PS:Attention je n'ai pas testé.
Bonjour,
"Leyley39" a écrit dans le message de
news:Merci pour votre aide à tous les deux
J'ai ajouté et modifié ce que tu m'as dit Michel_D mais il semblerait que
j'ai encore une erreur. Si je fait exécuter le code, il ouvre la fenêtre
macro (qui est vide soit dit en passant). Dois-je créer une macro ? Laquelle ?
Fabien, j'ai essayé ton code. Il me dit qu'il manque une ) ou un séparateur
d'expression sur la première ligne. Comme je suis débutant en VBA, je ne vois
pas où ça pourrait être. Est-ce des guillemets que tu as mis ou des
apostrophe dans le code. C'est un peu petit, je ne vois pas toujours combien
il y en a.
Mais merci, j'avance tout doucement et j'espère voir le bout du tunnel.
--
Merci de votre aide
Leyley39
"Michel__D" a écrit :Bonjour,
Non il manque un End If à positionner avant ou aprés le 1er End If
et tu peux remplacer tes Goto Fin par des Exit Sub
Dim Rs As DAO.Recordset
Dim Reconnu As Boolean
Reconnu = False
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value = Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value = CODE_ACCES.Value Then
MsgBox "Ok"
Reconnu = True
Exit Do
Else
MsgBox "Erreur de mot de passe"
GoTo Fin
End If
End If ' <= Le End If qui manque ***
Rs.MoveNext
Loop
If Reconnu = False Then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
GoTo Fin
End If
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Menu Général "
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
Fin:
End Sub
Tu peux utiliser ceci :
Private Sub Entrerr_Click()
Dim Rs As DAO.Recordset
On Error Goto Err_Entrerr_Click
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value=me.Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value=me.CODE_ACCES.Value Then
MsgBox "Ok"
Exit Do
Else
MsgBox "Erreur de mot de passe"
Exit Sub
End If
Else
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
Exit Sub
End If
Rs.MoveNext
Loop
DoCmd.OpenForm "Menu Général "
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
End Sub
Ou cela (solution de Fabien modifié) :
Private enterr_click
If nz(dlookup("[Code acces]","PRO SMAEC","[Nom Utilisateur]='" & _
me.modifiable4 & "'"),"")<>"" then
MsgBox "Ok"
Docmd.openform "Menu Général"
else
if dcount("[Nom Utilisateur]","PRO SMAEC","[Nom Utilisateur]='" & _
me.modifiable4 & "'")=0 then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
else
MsgBox "Mot de passe incorrect !!"
end if
end if
end sub
PS:Attention je n'ai pas testé.
Michel__D a écrit :
> Bonjour,
>
> Tu peux utiliser ceci :
>
> Private Sub Entrerr_Click()
> Dim Rs As DAO.Recordset
> On Error Goto Err_Entrerr_Click
>
> Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
> Do While Not Rs.EOF
> If Rs.Fields("NOM UTILISATEUR").Value=me.Modifiable4.Value Then
> If Rs.Fields("CODE ACCES").Value=me.CODE_ACCES.Value Then
> MsgBox "Ok"
> Exit Do
> Else
> MsgBox "Erreur de mot de passe"
> Exit Sub
> End If
> Else
> MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
> Exit Sub
> End If
> Rs.MoveNext
> Loop
>
> DoCmd.OpenForm "Menu Général "
>
> Exit_Entrerr_Click:
> Exit Sub
>
> Err_Entrerr_Click:
> MsgBox Err.Description
> Resume Exit_Entrerr_Click
>
> End Sub
>
>
>
> Ou cela (solution de Fabien modifié) :
>
> Private enterr_click
>
> If nz(dlookup("[Code acces]","PRO SMAEC","[Nom Utilisateur]='" & _
> me.modifiable4 & "'"),"")<>"" then
> MsgBox "Ok"
> Docmd.openform "Menu Général"
> else
> if dcount("[Nom Utilisateur]","PRO SMAEC","[Nom Utilisateur]='" & _
> me.modifiable4 & "'")=0 then
> MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
> else
> MsgBox "Mot de passe incorrect !!"
> end if
> end if
> end sub
>
> PS:Attention je n'ai pas testé.
>
Pssss : si le nom de l'utilisateur est choisi dans la liste, il est
forcément dans la table ;-)
Michel__D a écrit :
> Bonjour,
>
> Tu peux utiliser ceci :
>
> Private Sub Entrerr_Click()
> Dim Rs As DAO.Recordset
> On Error Goto Err_Entrerr_Click
>
> Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
> Do While Not Rs.EOF
> If Rs.Fields("NOM UTILISATEUR").Value=me.Modifiable4.Value Then
> If Rs.Fields("CODE ACCES").Value=me.CODE_ACCES.Value Then
> MsgBox "Ok"
> Exit Do
> Else
> MsgBox "Erreur de mot de passe"
> Exit Sub
> End If
> Else
> MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
> Exit Sub
> End If
> Rs.MoveNext
> Loop
>
> DoCmd.OpenForm "Menu Général "
>
> Exit_Entrerr_Click:
> Exit Sub
>
> Err_Entrerr_Click:
> MsgBox Err.Description
> Resume Exit_Entrerr_Click
>
> End Sub
>
>
>
> Ou cela (solution de Fabien modifié) :
>
> Private enterr_click
>
> If nz(dlookup("[Code acces]","PRO SMAEC","[Nom Utilisateur]='" & _
> me.modifiable4 & "'"),"")<>"" then
> MsgBox "Ok"
> Docmd.openform "Menu Général"
> else
> if dcount("[Nom Utilisateur]","PRO SMAEC","[Nom Utilisateur]='" & _
> me.modifiable4 & "'")=0 then
> MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
> else
> MsgBox "Mot de passe incorrect !!"
> end if
> end if
> end sub
>
> PS:Attention je n'ai pas testé.
>
Pssss : si le nom de l'utilisateur est choisi dans la liste, il est
forcément dans la table ;-)
Michel__D a écrit :
> Bonjour,
>
> Tu peux utiliser ceci :
>
> Private Sub Entrerr_Click()
> Dim Rs As DAO.Recordset
> On Error Goto Err_Entrerr_Click
>
> Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
> Do While Not Rs.EOF
> If Rs.Fields("NOM UTILISATEUR").Value=me.Modifiable4.Value Then
> If Rs.Fields("CODE ACCES").Value=me.CODE_ACCES.Value Then
> MsgBox "Ok"
> Exit Do
> Else
> MsgBox "Erreur de mot de passe"
> Exit Sub
> End If
> Else
> MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
> Exit Sub
> End If
> Rs.MoveNext
> Loop
>
> DoCmd.OpenForm "Menu Général "
>
> Exit_Entrerr_Click:
> Exit Sub
>
> Err_Entrerr_Click:
> MsgBox Err.Description
> Resume Exit_Entrerr_Click
>
> End Sub
>
>
>
> Ou cela (solution de Fabien modifié) :
>
> Private enterr_click
>
> If nz(dlookup("[Code acces]","PRO SMAEC","[Nom Utilisateur]='" & _
> me.modifiable4 & "'"),"")<>"" then
> MsgBox "Ok"
> Docmd.openform "Menu Général"
> else
> if dcount("[Nom Utilisateur]","PRO SMAEC","[Nom Utilisateur]='" & _
> me.modifiable4 & "'")=0 then
> MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
> else
> MsgBox "Mot de passe incorrect !!"
> end if
> end if
> end sub
>
> PS:Attention je n'ai pas testé.
>
Pssss : si le nom de l'utilisateur est choisi dans la liste, il est
forcément dans la table ;-)
"Fabien" a écrit dans le message de news:eL$Michel__D a écrit :Bonjour,
Tu peux utiliser ceci :
Private Sub Entrerr_Click()
Dim Rs As DAO.Recordset
On Error Goto Err_Entrerr_Click
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value=me.Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value=me.CODE_ACCES.Value Then
MsgBox "Ok"
Exit Do
Else
MsgBox "Erreur de mot de passe"
Exit Sub
End If
Else
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
Exit Sub
End If
Rs.MoveNext
Loop
DoCmd.OpenForm "Menu Général "
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
End Sub
Ou cela (solution de Fabien modifié) :
Private enterr_click
If nz(dlookup("[Code acces]","PRO SMAEC","[Nom Utilisateur]='" & _
me.modifiable4 & "'"),"")<>"" then
MsgBox "Ok"
Docmd.openform "Menu Général"
else
if dcount("[Nom Utilisateur]","PRO SMAEC","[Nom Utilisateur]='" & _
me.modifiable4 & "'")=0 then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
else
MsgBox "Mot de passe incorrect !!"
end if
end if
end sub
PS:Attention je n'ai pas testé.
Pssss : si le nom de l'utilisateur est choisi dans la liste, il est
forcément dans la table ;-)
Pas si tu saisi un nom d'utilisateur inexistant dans la liste, possible
si l'option "Limiter à liste" est sur non.
"Fabien" <UrbaniakFabienxxxx@Neuf.fr> a écrit dans le message de news:eL$CP92BJHA.5012@TK2MSFTNGP05.phx.gbl...
Michel__D a écrit :
Bonjour,
Tu peux utiliser ceci :
Private Sub Entrerr_Click()
Dim Rs As DAO.Recordset
On Error Goto Err_Entrerr_Click
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value=me.Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value=me.CODE_ACCES.Value Then
MsgBox "Ok"
Exit Do
Else
MsgBox "Erreur de mot de passe"
Exit Sub
End If
Else
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
Exit Sub
End If
Rs.MoveNext
Loop
DoCmd.OpenForm "Menu Général "
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
End Sub
Ou cela (solution de Fabien modifié) :
Private enterr_click
If nz(dlookup("[Code acces]","PRO SMAEC","[Nom Utilisateur]='" & _
me.modifiable4 & "'"),"")<>"" then
MsgBox "Ok"
Docmd.openform "Menu Général"
else
if dcount("[Nom Utilisateur]","PRO SMAEC","[Nom Utilisateur]='" & _
me.modifiable4 & "'")=0 then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
else
MsgBox "Mot de passe incorrect !!"
end if
end if
end sub
PS:Attention je n'ai pas testé.
Pssss : si le nom de l'utilisateur est choisi dans la liste, il est
forcément dans la table ;-)
Pas si tu saisi un nom d'utilisateur inexistant dans la liste, possible
si l'option "Limiter à liste" est sur non.
"Fabien" a écrit dans le message de news:eL$Michel__D a écrit :Bonjour,
Tu peux utiliser ceci :
Private Sub Entrerr_Click()
Dim Rs As DAO.Recordset
On Error Goto Err_Entrerr_Click
Set Rs = CurrentDb.OpenRecordset("PRO SMAEC")
Do While Not Rs.EOF
If Rs.Fields("NOM UTILISATEUR").Value=me.Modifiable4.Value Then
If Rs.Fields("CODE ACCES").Value=me.CODE_ACCES.Value Then
MsgBox "Ok"
Exit Do
Else
MsgBox "Erreur de mot de passe"
Exit Sub
End If
Else
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
Exit Sub
End If
Rs.MoveNext
Loop
DoCmd.OpenForm "Menu Général "
Exit_Entrerr_Click:
Exit Sub
Err_Entrerr_Click:
MsgBox Err.Description
Resume Exit_Entrerr_Click
End Sub
Ou cela (solution de Fabien modifié) :
Private enterr_click
If nz(dlookup("[Code acces]","PRO SMAEC","[Nom Utilisateur]='" & _
me.modifiable4 & "'"),"")<>"" then
MsgBox "Ok"
Docmd.openform "Menu Général"
else
if dcount("[Nom Utilisateur]","PRO SMAEC","[Nom Utilisateur]='" & _
me.modifiable4 & "'")=0 then
MsgBox "Utilisateur non reconnu !!!", vbCritical, "Attention..."
else
MsgBox "Mot de passe incorrect !!"
end if
end if
end sub
PS:Attention je n'ai pas testé.
Pssss : si le nom de l'utilisateur est choisi dans la liste, il est
forcément dans la table ;-)
Pas si tu saisi un nom d'utilisateur inexistant dans la liste, possible
si l'option "Limiter à liste" est sur non.