Erreur 3709 lors d'une màj d'un enregistrement

Fermé
jadami Messages postés 103 Date d'inscription mercredi 14 mars 2007 Statut Membre Dernière intervention 18 septembre 2020 - 16 nov. 2018 à 14:00
yg_be Messages postés 23361 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 novembre 2024 - 17 nov. 2018 à 11:34
Bonjour,

Lorsque j’exécute le code suivant je rencontre l’erreur suivante :

Erreur 3709 La clé de recherche n’a été trouvée dans aucun enregistrement

Sub ModifierBenevole()   

On Error GoTo GestionErreur

'--- Ouverture de la base
Set db = CurrentDb

'--- Initialise les champs
lstr_réfAdhérent = Me.txtRéfAdhérent
lstr_RéfBénévoleA = Nz(Me.txtréfBénévoleA, 0)

'--- Intérogation de la tbl chèques
rq = "SELECT [tbl Bénévoles].* " & _
" FROM [tbl Bénévoles]" & _
" WHERE ((([tbl Bénévoles].RéfAdhérent)=" & lstr_réfAdhérent & ") " & _
" And (([tbl Bénévoles].RéfBénévole)=" & Nz(lstr_RéfBénévoleA, 0) & "));"
'Debug.Print rq

Set rsBénévoles = db.OpenRecordset(rq, dbOpenDynaset)

'--- 1 Vérifie si le recordset et vide
If rsBénévoles.RecordCount = 0 Then
strMessage = "Aucun enregistrement à modifier"
strTitre = "MODIFICATION D'ENREGISTREMENT"
MsgBox strMessage, vbInformation, strTitre
Else

'--- Initialise les messages
strMessage = "Etes-vous sûr de vouloir modifier" & vbCr & "cet enregistrement ?"
strTitre = "MODIFICATION D'UN ENREGISTREMENT"
StrReponse = MsgBox(strMessage, vbInformation + vbYesNo + vbDefaultButton2, strTitre)
'MODIFICATIONsuppréssion
If StrReponse = vbYes Then

'--- Mofifications des Enrg dans tbl Bénévoles
rsBénévoles.Edit
rsBénévoles("RéfBénévoleType") = Nz(cmbBénévoleTypeMS)
rsBénévoles("RéfActivitéListe") = Nz(CmbActivitéListeMS)
rsBénévoles("DateEntrée") = CDate(Nz(txtDateEntréeMS))
rsBénévoles("DateSortie") = CDate(Nz(txtDateSortieMS))
rsBénévoles("Départ") = Me.OptSortieMS
rsBénévoles.Update
Else
Me.Undo
End If
End If

'--- Màj du sous formulaire
Forms![frm bénévoles]![frm bénévoles-sfm].Requery
Forms![frm bénévoles]![frm bénévoles-sfma].Requery

'--- Ferme les objet
rsBénévoles.Close: Set rsBénévoles = Nothing
db.Close: Set db = Nothing

GestionErreur:
End Sub

L’image jointe montre les champs du formulaire principal que je modifie, et
le sous formulaire qui doit être modifié.

Merci pour votre aide.

Salutations
A voir également:

2 réponses

yg_be Messages postés 23361 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 novembre 2024 Ambassadeur 1 556
16 nov. 2018 à 17:18
bonjour, suggestions:
1° ajouter "option explicit" en début de code
2° utiliser la coloration syntaxique quand tu postes ton code
3° nous indiquer sur quelle ligne de code tu obtiens l'erreur
0
jadami Messages postés 103 Date d'inscription mercredi 14 mars 2007 Statut Membre Dernière intervention 18 septembre 2020
17 nov. 2018 à 10:55
Bonjour,

Merci pour votre réponse,

Pour la coloration syntaxique je n'ai pas trouvé comment
modifier le message pour le faire.

Pour l'option explicit elle existe en haut de ma page.

L'erreur 3709 se produit lorsque le code passe par:

rsBénévoles.Update


Salutations
0
yg_be Messages postés 23361 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 novembre 2024 1 556
17 nov. 2018 à 11:34
que se passe-t'il si tu fais exactement la même mise à jour à la main?
0