OVH Cloud OVH Cloud

impossible d'atteinde l'enregistrement

2 réponses
Avatar
bjf
Bonjour =E0 tous.
J'ai =E9crit ceci dans un formulaire :

PosAct =3D Forms("F_CS_Liste_2")
("Fille86").Form.CurrentRecord =20

pour r=E9cup=E9rer la position de l'enregistrement.
Apr=E8s traitement je fais:


'Mise =E0 jour de l'affichage
Forms("F_CS_Liste_2")("Fille86").Requery
Forms![F_CS_Liste_2].Form![Fille86].SetFocus
DoCmd.GoToRecord , , acGoTo, PosAct

mais j'ai l'erreur "impossible d'atteindre=20
l'enregistrement sp=E9cifi=E9"!

Comment puis-je r=E9soudre ce probl=E8me ?
Merci d'avance
bjf

2 réponses

Avatar
Raymond [mvp]
Bonjour.

Si tu as fait un requery de la source c'est que les éléments de la source
ont changé ( ajout , suppression etc..). vouloir se repositionner sur une
ancienne position peut être totalement aléatoire même par un signet. essaie
de passer par refresh au lieu de requery. si tu veux conserver le requery,
il faut te repositionner sur la clé primaire par l'instruction FindFirst.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"bjf" a écrit dans le message de
news:593501c491b4$412326a0$
Bonjour à tous.
J'ai écrit ceci dans un formulaire :

PosAct = Forms("F_CS_Liste_2")
("Fille86").Form.CurrentRecord

pour récupérer la position de l'enregistrement.
Après traitement je fais:


'Mise à jour de l'affichage
Forms("F_CS_Liste_2")("Fille86").Requery
Forms![F_CS_Liste_2].Form![Fille86].SetFocus
DoCmd.GoToRecord , , acGoTo, PosAct

mais j'ai l'erreur "impossible d'atteindre
l'enregistrement spécifié"!

Comment puis-je résoudre ce problème ?
Merci d'avance
bjf
Avatar
bjf
Merci Raymond.
En fait, ce sous-formulaire est basé sur une requête. La
modification porte sur une liaison entre deux tables,
c'est donc la nouvelle liaison qui m'intéresse.
La solution que j'ai trouvé est la suivante:

Forms![F_CS_Liste_2].Form.SetFocus
Forms!F_CS_Liste_2.Form![Fille86].SetFocus
DoCmd.GoToRecord , , acGoTo, PosAct

Donc deux setfocus pour atteindre mon sous-formulaire et
me positionner sur le bon enregistrement.
Merci.
A+

-----Message d'origine-----
Bonjour.

Si tu as fait un requery de la source c'est que les
éléments de la source

ont changé ( ajout , suppression etc..). vouloir se
repositionner sur une

ancienne position peut être totalement aléatoire même par
un signet. essaie

de passer par refresh au lieu de requery. si tu veux
conserver le requery,

il faut te repositionner sur la clé primaire par
l'instruction FindFirst.


--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"bjf" a écrit dans
le message de

news:593501c491b4$412326a0$
Bonjour à tous.
J'ai écrit ceci dans un formulaire :

PosAct = Forms("F_CS_Liste_2")
("Fille86").Form.CurrentRecord

pour récupérer la position de l'enregistrement.
Après traitement je fais:


'Mise à jour de l'affichage
Forms("F_CS_Liste_2")("Fille86").Requery
Forms![F_CS_Liste_2].Form![Fille86].SetFocus
DoCmd.GoToRecord , , acGoTo, PosAct

mais j'ai l'erreur "impossible d'atteindre
l'enregistrement spécifié"!

Comment puis-je résoudre ce problème ?
Merci d'avance
bjf


.