Bonjour,
Je souhaiterais quitter un formulaire de saisie lorsque la valeur est deja présente dans la base et renvoyer l'utilisateur sur la fiche de consultation existante. Voici le code :
Private Sub idemp_AfterUpdate()
Dim Nb As Long, Titre As String, Message As String, Réponse
Nb = DCount("idemp", "f_emprunteur", "idemp=" & Me.idemp)
If Nb >= 1 Then
Titre = "Le code emprunteur " & Me.idemp & " est déjà dans la base"
Message = "Cliquez sur Oui pour modifier votre saisie " & _
vbCrLf & vbCrLf & _
"Cliquez sur Non afin d'être redirigé(e) vers la page précédente " & _
"et de séléctionner l'emprunteur à l'aide des menus déroulants"
Réponse = MsgBox(Message, vbYesNo, Titre)
If Réponse = vbYes Then
Me.idemp.SetFocus
Else
DoCmd.close
Dim stDocName As String
Dim stLinkCriteria As String
DoCmd.OpenForm "modif_dr_assos", , , "[choixemp] =" & Me.idemp
End If
Else
' le code emprunteur est nouveau
End If
End Sub
Le code du début marche, mais lorsque que je veu renvoyer l'utilisateur sur le formulaire avec la valeur qu'il a saisi dans le controle idemp. Le debogueur m'indique "l'expression entrée fait référence à un objet fermé ou supprimé"
Je n'ai plus de message d'erreur si j'enregistre idemp dans une variable mais ca ne marche pas non plus (access demande de saisir un parametre).
Merci d'avance pour votre aide précieuse !
Partager