Bonjour,
Avant ton requery, il faut que tu stocke une valeur (clé si possible) de l'enregistrement sur lequel tu te trouve dans une variable locale.
Ensuite, tu fais ton requery.
Ensuite comme te le propose argyronet, tu dois te servir de la propriété bookmark de ton recordsetclone.
En effet a chaque recordset d'un formulaire, Access y associe un clone.
Sur ce clone tu peux faire une recherche, grace à la clé que tu a sauvegardé et te positionner sur le bon enregistrement.
Ensuite tu récupère la valeur du Bookmark et tu l'affecte à la propriété du recordset de ton formulaire.
Simple non
Pour t'aider voila une petite procédure qui te facilitera la tâche
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| Sub Positionne(MonForm As Form, ControlName As String, ValeurRech, TypeValeur As Integer)
On Error Resume Next
Dim MonClone As Recordset
Dim Crits As String
Set MonClone = MonForm.RecordsetClone
Crits = "[" & ControlName & "]="
Select Case TypeValeur
Case vbString
Crits = Crits & "'" & ValeurRech & "'"
Case vbDate
Crits = Crits & "#" & Format(ValeurRech, "mm/dd/yyyy") & "#"
Case vbLong
Crits = Crits & ValeurRech
End Select
MonClone.FindFirst Crits
MonForm.BookMark = MonClone.BookMark
MonClone.Close
End Sub |
A utiliser de la manière suivante :
Positionne me,"MaClé", vnValeurSauvegarde, vbLong
Partager