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

jadami Messages postés 107 Statut Membre -  
yg_be Messages postés 24281 Date d'inscription   Statut Contributeur Dernière intervention   -
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 24281 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 585
 
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 107 Statut Membre
 
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 24281 Date d'inscription   Statut Contributeur Dernière intervention   1 585
 
que se passe-t'il si tu fais exactement la même mise à jour à la main?
0