Bonjour,
Ce que je t'avais proposé comme solution mettait bien à jour mon premier
formulaire mais la requête source n'était pas bien complexe.
Apparemment, c'était un problème de réactualisation de ta source mais je
ne vois pas trop pourquoi ca marche avec ton ordonnancement et pas avec
celui que je t'avais proposé puisque la méthode Requery ré-interroge la
source.
Tu pourrais remplacer ta commande DoCmd.DoMenuItem ... par
DoCmd.RunCommand acCmdSaveRecord.
As-tu essayé avec la méthode de RV car les signets c'est pas mal non
plus, voire même plus propre ?Je viens de tester ceci et cela fonctionne.
Dans mon premier formulaire appelé ExpeditionEjoutClo :
memobook = Me.CurrentRecord
DoCmd.OpenForm "ExpeditionModifQte", acNormal, , "[expefg_expe]=" &
Me.expefg_expe & " and [expefg_num]=" & Me.expefg_num & "", acFormEdit
Dans mon second appelé ExpeditionModifQte :
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
Forms!ExpeditionAjoutClo.Requery
Forms!ExpeditionAjoutClo.Recordset.AbsolutePosition = memobook - 1
Qu'en pensez-vous ?
Merci à vous deux de votre aide.
a +
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
Ce que je t'avais proposé comme solution mettait bien à jour mon premier
formulaire mais la requête source n'était pas bien complexe.
Apparemment, c'était un problème de réactualisation de ta source mais je
ne vois pas trop pourquoi ca marche avec ton ordonnancement et pas avec
celui que je t'avais proposé puisque la méthode Requery ré-interroge la
source.
Tu pourrais remplacer ta commande DoCmd.DoMenuItem ... par
DoCmd.RunCommand acCmdSaveRecord.
As-tu essayé avec la méthode de RV car les signets c'est pas mal non
plus, voire même plus propre ?
Je viens de tester ceci et cela fonctionne.
Dans mon premier formulaire appelé ExpeditionEjoutClo :
memobook = Me.CurrentRecord
DoCmd.OpenForm "ExpeditionModifQte", acNormal, , "[expefg_expe]=" &
Me.expefg_expe & " and [expefg_num]=" & Me.expefg_num & "", acFormEdit
Dans mon second appelé ExpeditionModifQte :
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
Forms!ExpeditionAjoutClo.Requery
Forms!ExpeditionAjoutClo.Recordset.AbsolutePosition = memobook - 1
Qu'en pensez-vous ?
Merci à vous deux de votre aide.
a +
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
Ce que je t'avais proposé comme solution mettait bien à jour mon premier
formulaire mais la requête source n'était pas bien complexe.
Apparemment, c'était un problème de réactualisation de ta source mais je
ne vois pas trop pourquoi ca marche avec ton ordonnancement et pas avec
celui que je t'avais proposé puisque la méthode Requery ré-interroge la
source.
Tu pourrais remplacer ta commande DoCmd.DoMenuItem ... par
DoCmd.RunCommand acCmdSaveRecord.
As-tu essayé avec la méthode de RV car les signets c'est pas mal non
plus, voire même plus propre ?Je viens de tester ceci et cela fonctionne.
Dans mon premier formulaire appelé ExpeditionEjoutClo :
memobook = Me.CurrentRecord
DoCmd.OpenForm "ExpeditionModifQte", acNormal, , "[expefg_expe]=" &
Me.expefg_expe & " and [expefg_num]=" & Me.expefg_num & "", acFormEdit
Dans mon second appelé ExpeditionModifQte :
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
Forms!ExpeditionAjoutClo.Requery
Forms!ExpeditionAjoutClo.Recordset.AbsolutePosition = memobook - 1
Qu'en pensez-vous ?
Merci à vous deux de votre aide.
a +
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
Voici le code que je viens de tester :
Dans mon premier formulaire :
memobook = Me.CurrentRecord
DoCmd.OpenForm "ExpeditionModifQte", acNormal, , "[expefg_expe]=" &
Me.expefg_expe & " and [expefg_num]=" & Me.expefg_num & "", acFormEdit
Me.Requery
Me.Recordset.AbsolutePosition = memobook - 1
Dans mon second formulaire appelé ExpeditionModifiQté qui permet de saisir
la quantité réellement livrée et de mettre à jour mon premier formulaire
qui
présente la liste des fournitures livrées avec les quantités livrées :
Private Sub Form_Close()
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
End Sub
Avec ce code, le sélecteur se positionne bien (après le requery) sur la
ligne sélectionnée avant la mise à jour mais la mise à jour de la quantité
livrée n'est pas faite.
Merci à vous deux de vos conseils
--
NathalieSalut,
Il faudrait préciser la syntaxe car je viens de tester de mon coté
et
cela fonctionne (en access2000 et 2002).
Pouvez vous envoyer le code utilisé dans les formulaires pour
effectuer
ces manips.
A+
Rv
"Nathalie Lebas" a écrit dans
le
message de news:Je ne dirais pas que tu as été trop bref mais plutôt que je ne connais
pas.Je pense que mon soucis est plus compliqué que cela :
mon premier formulaire est une liste, mon second, un masque de saisie
d'info.En réalité, il faut que je mémorise la position dans la section détail
avantl'ouverture du second formulaire. Lorsque l'utilisateur ouvre le
second
formulaire, il met à jour des données, lorsqu'il le ferme, je fais un
requeryde mon premier formulaire encore ouvert, et c'est à ce moment, je
pense
queje dois repositionner mon premier formulaire à partir de mon second.
C'est
làque je n'y arrive pas.
Suis-je claire ?
Donc j'ai suivi tes instructions, j'ai créé une variable globale de
type
variant (appelée memobook). Juste avant l'ouverture du second
formulaire
(celui de saisie des données), je fais memobook=me.recordset.bookmark,
le
second formulaire s'ouvre. L'utilisateur saisi ses données puis il
ferme
lesecond formulaire. A ce moment, je fais le requery et j'essaye de
faire
nomdu premier formulaire.recordset.bookmark = memobook, afin de
repositionner
lesélecteur du premier formulaire là où il était avant le requery. Mais
cela
nemarche pas ! j'ai une erreur 424, objet requis
Peux-tu m'aider ?
Merci
A +
--
NathalieJ'ai été trop bref pardon!
D'une part objBook est une variable de type variant qu'il faut
déclarer.
D'autre part cette variable va servir à stocker un bookmark du
recordset
duformulaire. C.a.d. un signet sur la ligne sélectionnée dans le
formulaire.
On aurau donc:
Dim objBook as Variant
objBook = me.recordset.bookmark
Me.Requery
Me.recordset.bookmark = objBook
A+
Rv
"Nathalie Lebas" a écrit
dans
lemessage de
news:
Salut,
Merci pour ta réponse.
Si je fais ce que tu as écris dans objbook je récupère "??".
Il doit y avoir un problème ?
A+
--
NathalieSalut,
Avant le requery:
objBook = me.recordset.bookmark
Apres le requery:
me.recordset.bookmark = objBook
A+
Rv
"Nathalie Lebas" a
écrit
danslemessage de
news:Bonjour à tous,
J'ai un souci avec un formulaire. Celui-ci présente une liste
de
lignes(section détail) avec chacune une quantité à saisir. Pour la
saisir,jepassepar un second formulaire (celui parce que la requête de mon
premierformulaire est complexe et qu'elle fait un regroupement).
Lorsque
lasaisiede la quantité est validée, je fais un requery de mon premier
formulaireafinque les données du second formulaire viennent rafraichir
celles du
premier.Le problème est que le requery me positionne à chaque fois à
la
premièredela section détail du premier formulaire. Il faudrait que le
programmerestepositionné sur la ligne que l'utilisateur vient de mettre à
jour.
Merci à l'avance
--
Nathalie
Bonjour,
Voici le code que je viens de tester :
Dans mon premier formulaire :
memobook = Me.CurrentRecord
DoCmd.OpenForm "ExpeditionModifQte", acNormal, , "[expefg_expe]=" &
Me.expefg_expe & " and [expefg_num]=" & Me.expefg_num & "", acFormEdit
Me.Requery
Me.Recordset.AbsolutePosition = memobook - 1
Dans mon second formulaire appelé ExpeditionModifiQté qui permet de saisir
la quantité réellement livrée et de mettre à jour mon premier formulaire
qui
présente la liste des fournitures livrées avec les quantités livrées :
Private Sub Form_Close()
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
End Sub
Avec ce code, le sélecteur se positionne bien (après le requery) sur la
ligne sélectionnée avant la mise à jour mais la mise à jour de la quantité
livrée n'est pas faite.
Merci à vous deux de vos conseils
--
Nathalie
Salut,
Il faudrait préciser la syntaxe car je viens de tester de mon coté
et
cela fonctionne (en access2000 et 2002).
Pouvez vous envoyer le code utilisé dans les formulaires pour
effectuer
ces manips.
A+
Rv
"Nathalie Lebas" <NathalieLebas@discussions.microsoft.com> a écrit dans
le
message de news:78602D61-F0F4-4996-A8F6-28894370EFE0@microsoft.com...
Je ne dirais pas que tu as été trop bref mais plutôt que je ne connais
pas.
Je pense que mon soucis est plus compliqué que cela :
mon premier formulaire est une liste, mon second, un masque de saisie
d'info.
En réalité, il faut que je mémorise la position dans la section détail
avant
l'ouverture du second formulaire. Lorsque l'utilisateur ouvre le
second
formulaire, il met à jour des données, lorsqu'il le ferme, je fais un
requery
de mon premier formulaire encore ouvert, et c'est à ce moment, je
pense
que
je dois repositionner mon premier formulaire à partir de mon second.
C'est
là
que je n'y arrive pas.
Suis-je claire ?
Donc j'ai suivi tes instructions, j'ai créé une variable globale de
type
variant (appelée memobook). Juste avant l'ouverture du second
formulaire
(celui de saisie des données), je fais memobook=me.recordset.bookmark,
le
second formulaire s'ouvre. L'utilisateur saisi ses données puis il
ferme
le
second formulaire. A ce moment, je fais le requery et j'essaye de
faire
nom
du premier formulaire.recordset.bookmark = memobook, afin de
repositionner
le
sélecteur du premier formulaire là où il était avant le requery. Mais
cela
ne
marche pas ! j'ai une erreur 424, objet requis
Peux-tu m'aider ?
Merci
A +
--
Nathalie
J'ai été trop bref pardon!
D'une part objBook est une variable de type variant qu'il faut
déclarer.
D'autre part cette variable va servir à stocker un bookmark du
recordset
du
formulaire. C.a.d. un signet sur la ligne sélectionnée dans le
formulaire.
On aurau donc:
Dim objBook as Variant
objBook = me.recordset.bookmark
Me.Requery
Me.recordset.bookmark = objBook
A+
Rv
"Nathalie Lebas" <NathalieLebas@discussions.microsoft.com> a écrit
dans
le
message de
news:34083C45-553E-407B-89C4-0853F28EBE32@microsoft.com...
Salut,
Merci pour ta réponse.
Si je fais ce que tu as écris dans objbook je récupère "??".
Il doit y avoir un problème ?
A+
--
Nathalie
Salut,
Avant le requery:
objBook = me.recordset.bookmark
Apres le requery:
me.recordset.bookmark = objBook
A+
Rv
"Nathalie Lebas" <NathalieLebas@discussions.microsoft.com> a
écrit
dans
le
message de
news:021B18E5-1693-4F06-A160-C0301DAE2207@microsoft.com...
Bonjour à tous,
J'ai un souci avec un formulaire. Celui-ci présente une liste
de
lignes
(section détail) avec chacune une quantité à saisir. Pour la
saisir,
je
passe
par un second formulaire (celui parce que la requête de mon
premier
formulaire est complexe et qu'elle fait un regroupement).
Lorsque
la
saisie
de la quantité est validée, je fais un requery de mon premier
formulaire
afin
que les données du second formulaire viennent rafraichir
celles du
premier.
Le problème est que le requery me positionne à chaque fois à
la
première
de
la section détail du premier formulaire. Il faudrait que le
programme
reste
positionné sur la ligne que l'utilisateur vient de mettre à
jour.
Merci à l'avance
--
Nathalie
Bonjour,
Voici le code que je viens de tester :
Dans mon premier formulaire :
memobook = Me.CurrentRecord
DoCmd.OpenForm "ExpeditionModifQte", acNormal, , "[expefg_expe]=" &
Me.expefg_expe & " and [expefg_num]=" & Me.expefg_num & "", acFormEdit
Me.Requery
Me.Recordset.AbsolutePosition = memobook - 1
Dans mon second formulaire appelé ExpeditionModifiQté qui permet de saisir
la quantité réellement livrée et de mettre à jour mon premier formulaire
qui
présente la liste des fournitures livrées avec les quantités livrées :
Private Sub Form_Close()
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
End Sub
Avec ce code, le sélecteur se positionne bien (après le requery) sur la
ligne sélectionnée avant la mise à jour mais la mise à jour de la quantité
livrée n'est pas faite.
Merci à vous deux de vos conseils
--
NathalieSalut,
Il faudrait préciser la syntaxe car je viens de tester de mon coté
et
cela fonctionne (en access2000 et 2002).
Pouvez vous envoyer le code utilisé dans les formulaires pour
effectuer
ces manips.
A+
Rv
"Nathalie Lebas" a écrit dans
le
message de news:Je ne dirais pas que tu as été trop bref mais plutôt que je ne connais
pas.Je pense que mon soucis est plus compliqué que cela :
mon premier formulaire est une liste, mon second, un masque de saisie
d'info.En réalité, il faut que je mémorise la position dans la section détail
avantl'ouverture du second formulaire. Lorsque l'utilisateur ouvre le
second
formulaire, il met à jour des données, lorsqu'il le ferme, je fais un
requeryde mon premier formulaire encore ouvert, et c'est à ce moment, je
pense
queje dois repositionner mon premier formulaire à partir de mon second.
C'est
làque je n'y arrive pas.
Suis-je claire ?
Donc j'ai suivi tes instructions, j'ai créé une variable globale de
type
variant (appelée memobook). Juste avant l'ouverture du second
formulaire
(celui de saisie des données), je fais memobook=me.recordset.bookmark,
le
second formulaire s'ouvre. L'utilisateur saisi ses données puis il
ferme
lesecond formulaire. A ce moment, je fais le requery et j'essaye de
faire
nomdu premier formulaire.recordset.bookmark = memobook, afin de
repositionner
lesélecteur du premier formulaire là où il était avant le requery. Mais
cela
nemarche pas ! j'ai une erreur 424, objet requis
Peux-tu m'aider ?
Merci
A +
--
NathalieJ'ai été trop bref pardon!
D'une part objBook est une variable de type variant qu'il faut
déclarer.
D'autre part cette variable va servir à stocker un bookmark du
recordset
duformulaire. C.a.d. un signet sur la ligne sélectionnée dans le
formulaire.
On aurau donc:
Dim objBook as Variant
objBook = me.recordset.bookmark
Me.Requery
Me.recordset.bookmark = objBook
A+
Rv
"Nathalie Lebas" a écrit
dans
lemessage de
news:
Salut,
Merci pour ta réponse.
Si je fais ce que tu as écris dans objbook je récupère "??".
Il doit y avoir un problème ?
A+
--
NathalieSalut,
Avant le requery:
objBook = me.recordset.bookmark
Apres le requery:
me.recordset.bookmark = objBook
A+
Rv
"Nathalie Lebas" a
écrit
danslemessage de
news:Bonjour à tous,
J'ai un souci avec un formulaire. Celui-ci présente une liste
de
lignes(section détail) avec chacune une quantité à saisir. Pour la
saisir,jepassepar un second formulaire (celui parce que la requête de mon
premierformulaire est complexe et qu'elle fait un regroupement).
Lorsque
lasaisiede la quantité est validée, je fais un requery de mon premier
formulaireafinque les données du second formulaire viennent rafraichir
celles du
premier.Le problème est que le requery me positionne à chaque fois à
la
premièredela section détail du premier formulaire. Il faudrait que le
programmerestepositionné sur la ligne que l'utilisateur vient de mettre à
jour.
Merci à l'avance
--
Nathalie
Bonjour,
Ce que je t'avais proposé comme solution mettait bien à jour mon premier
formulaire mais la requête source n'était pas bien complexe.
Apparemment, c'était un problème de réactualisation de ta source mais je
ne vois pas trop pourquoi ca marche avec ton ordonnancement et pas avec
celui que je t'avais proposé puisque la méthode Requery ré-interroge la
source.
Tu pourrais remplacer ta commande DoCmd.DoMenuItem ... par
DoCmd.RunCommand acCmdSaveRecord.
As-tu essayé avec la méthode de RV car les signets c'est pas mal non
plus, voire même plus propre ?Je viens de tester ceci et cela fonctionne.
Dans mon premier formulaire appelé ExpeditionEjoutClo :
memobook = Me.CurrentRecord
DoCmd.OpenForm "ExpeditionModifQte", acNormal, , "[expefg_expe]=" &
Me.expefg_expe & " and [expefg_num]=" & Me.expefg_num & "", acFormEdit
Dans mon second appelé ExpeditionModifQte :
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, ,
acMenuVer70
Forms!ExpeditionAjoutClo.Requery
Forms!ExpeditionAjoutClo.Recordset.AbsolutePosition = memobook - 1
Qu'en pensez-vous ?
Merci à vous deux de votre aide.
a +
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
Ce que je t'avais proposé comme solution mettait bien à jour mon premier
formulaire mais la requête source n'était pas bien complexe.
Apparemment, c'était un problème de réactualisation de ta source mais je
ne vois pas trop pourquoi ca marche avec ton ordonnancement et pas avec
celui que je t'avais proposé puisque la méthode Requery ré-interroge la
source.
Tu pourrais remplacer ta commande DoCmd.DoMenuItem ... par
DoCmd.RunCommand acCmdSaveRecord.
As-tu essayé avec la méthode de RV car les signets c'est pas mal non
plus, voire même plus propre ?
Je viens de tester ceci et cela fonctionne.
Dans mon premier formulaire appelé ExpeditionEjoutClo :
memobook = Me.CurrentRecord
DoCmd.OpenForm "ExpeditionModifQte", acNormal, , "[expefg_expe]=" &
Me.expefg_expe & " and [expefg_num]=" & Me.expefg_num & "", acFormEdit
Dans mon second appelé ExpeditionModifQte :
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, ,
acMenuVer70
Forms!ExpeditionAjoutClo.Requery
Forms!ExpeditionAjoutClo.Recordset.AbsolutePosition = memobook - 1
Qu'en pensez-vous ?
Merci à vous deux de votre aide.
a +
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
Ce que je t'avais proposé comme solution mettait bien à jour mon premier
formulaire mais la requête source n'était pas bien complexe.
Apparemment, c'était un problème de réactualisation de ta source mais je
ne vois pas trop pourquoi ca marche avec ton ordonnancement et pas avec
celui que je t'avais proposé puisque la méthode Requery ré-interroge la
source.
Tu pourrais remplacer ta commande DoCmd.DoMenuItem ... par
DoCmd.RunCommand acCmdSaveRecord.
As-tu essayé avec la méthode de RV car les signets c'est pas mal non
plus, voire même plus propre ?Je viens de tester ceci et cela fonctionne.
Dans mon premier formulaire appelé ExpeditionEjoutClo :
memobook = Me.CurrentRecord
DoCmd.OpenForm "ExpeditionModifQte", acNormal, , "[expefg_expe]=" &
Me.expefg_expe & " and [expefg_num]=" & Me.expefg_num & "", acFormEdit
Dans mon second appelé ExpeditionModifQte :
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, ,
acMenuVer70
Forms!ExpeditionAjoutClo.Requery
Forms!ExpeditionAjoutClo.Recordset.AbsolutePosition = memobook - 1
Qu'en pensez-vous ?
Merci à vous deux de votre aide.
a +
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Pour forcer un rafraîchissement récalcitrant à Me.Requery j'utilise
Me.recordSource = Me.RecordSource. Je pense que Me.Requery travaile avec une
"sorte de cache" alors que recharger la source du formulaire oblige à
réintérroger les données de la base.
A+
Rv
"Nathalie Lebas" a écrit dans le
message de news:Bonjour,
Voici le code que je viens de tester :
Dans mon premier formulaire :
memobook = Me.CurrentRecord
DoCmd.OpenForm "ExpeditionModifQte", acNormal, , "[expefg_expe]=" &
Me.expefg_expe & " and [expefg_num]=" & Me.expefg_num & "", acFormEdit
Me.Requery
Me.Recordset.AbsolutePosition = memobook - 1
Dans mon second formulaire appelé ExpeditionModifiQté qui permet de saisir
la quantité réellement livrée et de mettre à jour mon premier formulaire
quiprésente la liste des fournitures livrées avec les quantités livrées :
Private Sub Form_Close()
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
End Sub
Avec ce code, le sélecteur se positionne bien (après le requery) sur la
ligne sélectionnée avant la mise à jour mais la mise à jour de la quantité
livrée n'est pas faite.
Merci à vous deux de vos conseils
--
NathalieSalut,
Il faudrait préciser la syntaxe car je viens de tester de mon coté
etcela fonctionne (en access2000 et 2002).
Pouvez vous envoyer le code utilisé dans les formulaires pour
effectuerces manips.
A+
Rv
"Nathalie Lebas" a écrit dans
lemessage de news:Je ne dirais pas que tu as été trop bref mais plutôt que je ne connais
pas.Je pense que mon soucis est plus compliqué que cela :
mon premier formulaire est une liste, mon second, un masque de saisie
d'info.En réalité, il faut que je mémorise la position dans la section détail
avantl'ouverture du second formulaire. Lorsque l'utilisateur ouvre le
secondformulaire, il met à jour des données, lorsqu'il le ferme, je fais un
requeryde mon premier formulaire encore ouvert, et c'est à ce moment, je
pensequeje dois repositionner mon premier formulaire à partir de mon second.
C'estlàque je n'y arrive pas.
Suis-je claire ?
Donc j'ai suivi tes instructions, j'ai créé une variable globale de
typevariant (appelée memobook). Juste avant l'ouverture du second
formulaire(celui de saisie des données), je fais memobook=me.recordset.bookmark,
lesecond formulaire s'ouvre. L'utilisateur saisi ses données puis il
fermelesecond formulaire. A ce moment, je fais le requery et j'essaye de
fairenomdu premier formulaire.recordset.bookmark = memobook, afin de
repositionnerlesélecteur du premier formulaire là où il était avant le requery. Mais
celanemarche pas ! j'ai une erreur 424, objet requis
Peux-tu m'aider ?
Merci
A +
--
NathalieJ'ai été trop bref pardon!
D'une part objBook est une variable de type variant qu'il faut
déclarer.D'autre part cette variable va servir à stocker un bookmark du
recordsetduformulaire. C.a.d. un signet sur la ligne sélectionnée dans le
formulaire.
On aurau donc:
Dim objBook as Variant
objBook = me.recordset.bookmark
Me.Requery
Me.recordset.bookmark = objBook
A+
Rv
"Nathalie Lebas" a écrit
danslemessage de
news:Salut,
Merci pour ta réponse.
Si je fais ce que tu as écris dans objbook je récupère "??".
Il doit y avoir un problème ?
A+
--
NathalieSalut,
Avant le requery:
objBook = me.recordset.bookmark
Apres le requery:
me.recordset.bookmark = objBook
A+
Rv
"Nathalie Lebas" a
écritdanslemessage de
news:Bonjour à tous,
J'ai un souci avec un formulaire. Celui-ci présente une liste
delignes(section détail) avec chacune une quantité à saisir. Pour la
saisir,jepassepar un second formulaire (celui parce que la requête de mon
premierformulaire est complexe et qu'elle fait un regroupement).
Lorsquelasaisiede la quantité est validée, je fais un requery de mon premier
formulaireafinque les données du second formulaire viennent rafraichir
celles dupremier.Le problème est que le requery me positionne à chaque fois à
lapremièredela section détail du premier formulaire. Il faudrait que le
programmerestepositionné sur la ligne que l'utilisateur vient de mettre à
jour.Merci à l'avance
--
Nathalie
Pour forcer un rafraîchissement récalcitrant à Me.Requery j'utilise
Me.recordSource = Me.RecordSource. Je pense que Me.Requery travaile avec une
"sorte de cache" alors que recharger la source du formulaire oblige à
réintérroger les données de la base.
A+
Rv
"Nathalie Lebas" <NathalieLebas@discussions.microsoft.com> a écrit dans le
message de news:EF3CC200-F6D7-4923-A64F-A28D977E449D@microsoft.com...
Bonjour,
Voici le code que je viens de tester :
Dans mon premier formulaire :
memobook = Me.CurrentRecord
DoCmd.OpenForm "ExpeditionModifQte", acNormal, , "[expefg_expe]=" &
Me.expefg_expe & " and [expefg_num]=" & Me.expefg_num & "", acFormEdit
Me.Requery
Me.Recordset.AbsolutePosition = memobook - 1
Dans mon second formulaire appelé ExpeditionModifiQté qui permet de saisir
la quantité réellement livrée et de mettre à jour mon premier formulaire
qui
présente la liste des fournitures livrées avec les quantités livrées :
Private Sub Form_Close()
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
End Sub
Avec ce code, le sélecteur se positionne bien (après le requery) sur la
ligne sélectionnée avant la mise à jour mais la mise à jour de la quantité
livrée n'est pas faite.
Merci à vous deux de vos conseils
--
Nathalie
Salut,
Il faudrait préciser la syntaxe car je viens de tester de mon coté
et
cela fonctionne (en access2000 et 2002).
Pouvez vous envoyer le code utilisé dans les formulaires pour
effectuer
ces manips.
A+
Rv
"Nathalie Lebas" <NathalieLebas@discussions.microsoft.com> a écrit dans
le
message de news:78602D61-F0F4-4996-A8F6-28894370EFE0@microsoft.com...
Je ne dirais pas que tu as été trop bref mais plutôt que je ne connais
pas.
Je pense que mon soucis est plus compliqué que cela :
mon premier formulaire est une liste, mon second, un masque de saisie
d'info.
En réalité, il faut que je mémorise la position dans la section détail
avant
l'ouverture du second formulaire. Lorsque l'utilisateur ouvre le
second
formulaire, il met à jour des données, lorsqu'il le ferme, je fais un
requery
de mon premier formulaire encore ouvert, et c'est à ce moment, je
pense
que
je dois repositionner mon premier formulaire à partir de mon second.
C'est
là
que je n'y arrive pas.
Suis-je claire ?
Donc j'ai suivi tes instructions, j'ai créé une variable globale de
type
variant (appelée memobook). Juste avant l'ouverture du second
formulaire
(celui de saisie des données), je fais memobook=me.recordset.bookmark,
le
second formulaire s'ouvre. L'utilisateur saisi ses données puis il
ferme
le
second formulaire. A ce moment, je fais le requery et j'essaye de
faire
nom
du premier formulaire.recordset.bookmark = memobook, afin de
repositionner
le
sélecteur du premier formulaire là où il était avant le requery. Mais
cela
ne
marche pas ! j'ai une erreur 424, objet requis
Peux-tu m'aider ?
Merci
A +
--
Nathalie
J'ai été trop bref pardon!
D'une part objBook est une variable de type variant qu'il faut
déclarer.
D'autre part cette variable va servir à stocker un bookmark du
recordset
du
formulaire. C.a.d. un signet sur la ligne sélectionnée dans le
formulaire.
On aurau donc:
Dim objBook as Variant
objBook = me.recordset.bookmark
Me.Requery
Me.recordset.bookmark = objBook
A+
Rv
"Nathalie Lebas" <NathalieLebas@discussions.microsoft.com> a écrit
dans
le
message de
news:34083C45-553E-407B-89C4-0853F28EBE32@microsoft.com...
Salut,
Merci pour ta réponse.
Si je fais ce que tu as écris dans objbook je récupère "??".
Il doit y avoir un problème ?
A+
--
Nathalie
Salut,
Avant le requery:
objBook = me.recordset.bookmark
Apres le requery:
me.recordset.bookmark = objBook
A+
Rv
"Nathalie Lebas" <NathalieLebas@discussions.microsoft.com> a
écrit
dans
le
message de
news:021B18E5-1693-4F06-A160-C0301DAE2207@microsoft.com...
Bonjour à tous,
J'ai un souci avec un formulaire. Celui-ci présente une liste
de
lignes
(section détail) avec chacune une quantité à saisir. Pour la
saisir,
je
passe
par un second formulaire (celui parce que la requête de mon
premier
formulaire est complexe et qu'elle fait un regroupement).
Lorsque
la
saisie
de la quantité est validée, je fais un requery de mon premier
formulaire
afin
que les données du second formulaire viennent rafraichir
celles du
premier.
Le problème est que le requery me positionne à chaque fois à
la
première
de
la section détail du premier formulaire. Il faudrait que le
programme
reste
positionné sur la ligne que l'utilisateur vient de mettre à
jour.
Merci à l'avance
--
Nathalie
Pour forcer un rafraîchissement récalcitrant à Me.Requery j'utilise
Me.recordSource = Me.RecordSource. Je pense que Me.Requery travaile avec une
"sorte de cache" alors que recharger la source du formulaire oblige à
réintérroger les données de la base.
A+
Rv
"Nathalie Lebas" a écrit dans le
message de news:Bonjour,
Voici le code que je viens de tester :
Dans mon premier formulaire :
memobook = Me.CurrentRecord
DoCmd.OpenForm "ExpeditionModifQte", acNormal, , "[expefg_expe]=" &
Me.expefg_expe & " and [expefg_num]=" & Me.expefg_num & "", acFormEdit
Me.Requery
Me.Recordset.AbsolutePosition = memobook - 1
Dans mon second formulaire appelé ExpeditionModifiQté qui permet de saisir
la quantité réellement livrée et de mettre à jour mon premier formulaire
quiprésente la liste des fournitures livrées avec les quantités livrées :
Private Sub Form_Close()
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
End Sub
Avec ce code, le sélecteur se positionne bien (après le requery) sur la
ligne sélectionnée avant la mise à jour mais la mise à jour de la quantité
livrée n'est pas faite.
Merci à vous deux de vos conseils
--
NathalieSalut,
Il faudrait préciser la syntaxe car je viens de tester de mon coté
etcela fonctionne (en access2000 et 2002).
Pouvez vous envoyer le code utilisé dans les formulaires pour
effectuerces manips.
A+
Rv
"Nathalie Lebas" a écrit dans
lemessage de news:Je ne dirais pas que tu as été trop bref mais plutôt que je ne connais
pas.Je pense que mon soucis est plus compliqué que cela :
mon premier formulaire est une liste, mon second, un masque de saisie
d'info.En réalité, il faut que je mémorise la position dans la section détail
avantl'ouverture du second formulaire. Lorsque l'utilisateur ouvre le
secondformulaire, il met à jour des données, lorsqu'il le ferme, je fais un
requeryde mon premier formulaire encore ouvert, et c'est à ce moment, je
pensequeje dois repositionner mon premier formulaire à partir de mon second.
C'estlàque je n'y arrive pas.
Suis-je claire ?
Donc j'ai suivi tes instructions, j'ai créé une variable globale de
typevariant (appelée memobook). Juste avant l'ouverture du second
formulaire(celui de saisie des données), je fais memobook=me.recordset.bookmark,
lesecond formulaire s'ouvre. L'utilisateur saisi ses données puis il
fermelesecond formulaire. A ce moment, je fais le requery et j'essaye de
fairenomdu premier formulaire.recordset.bookmark = memobook, afin de
repositionnerlesélecteur du premier formulaire là où il était avant le requery. Mais
celanemarche pas ! j'ai une erreur 424, objet requis
Peux-tu m'aider ?
Merci
A +
--
NathalieJ'ai été trop bref pardon!
D'une part objBook est une variable de type variant qu'il faut
déclarer.D'autre part cette variable va servir à stocker un bookmark du
recordsetduformulaire. C.a.d. un signet sur la ligne sélectionnée dans le
formulaire.
On aurau donc:
Dim objBook as Variant
objBook = me.recordset.bookmark
Me.Requery
Me.recordset.bookmark = objBook
A+
Rv
"Nathalie Lebas" a écrit
danslemessage de
news:Salut,
Merci pour ta réponse.
Si je fais ce que tu as écris dans objbook je récupère "??".
Il doit y avoir un problème ?
A+
--
NathalieSalut,
Avant le requery:
objBook = me.recordset.bookmark
Apres le requery:
me.recordset.bookmark = objBook
A+
Rv
"Nathalie Lebas" a
écritdanslemessage de
news:Bonjour à tous,
J'ai un souci avec un formulaire. Celui-ci présente une liste
delignes(section détail) avec chacune une quantité à saisir. Pour la
saisir,jepassepar un second formulaire (celui parce que la requête de mon
premierformulaire est complexe et qu'elle fait un regroupement).
Lorsquelasaisiede la quantité est validée, je fais un requery de mon premier
formulaireafinque les données du second formulaire viennent rafraichir
celles dupremier.Le problème est que le requery me positionne à chaque fois à
lapremièredela section détail du premier formulaire. Il faudrait que le
programmerestepositionné sur la ligne que l'utilisateur vient de mettre à
jour.Merci à l'avance
--
Nathalie
Salut Eric,
Au fait, puisque je te retrouve dans ce fil un petit HS :
Que penses tu de la méthode que je propose dans le fil auquel tu
participais : "Methode de remplissage avec AddItem" du 26/11. Je demande car
je n'ai pas vu de réponse...
A+
Rv
Salut Eric,
Au fait, puisque je te retrouve dans ce fil un petit HS :
Que penses tu de la méthode que je propose dans le fil auquel tu
participais : "Methode de remplissage avec AddItem" du 26/11. Je demande car
je n'ai pas vu de réponse...
A+
Rv
Salut Eric,
Au fait, puisque je te retrouve dans ce fil un petit HS :
Que penses tu de la méthode que je propose dans le fil auquel tu
participais : "Methode de remplissage avec AddItem" du 26/11. Je demande car
je n'ai pas vu de réponse...
A+
Rv
Bonjour Rv,
Excellente proposition puisque ça répond à la problématique du recordset
qui reste ouvert. Fi des éventuels ralentissements ;-)
Très belle construction du Recordset objRsSourceListe. Va falloir que
j'approfondisse ADO ! En tout cas, je ne connaissais pas ce principe.
Toutefois, j'ai un problème sur la ligne
Set Me.lstTest.Recordset = objRsSourceListe dans la procédure
initialiserListe, une erreur de compilation 'Membre de méthode ou de
données introuvable' (Access2000-SP3) sur la propriété Recordset
Pourrais-tu m'indiquer comment y remédier ? car j'aimerais bien tester
intégralement ta procédure.Salut Eric,
Au fait, puisque je te retrouve dans ce fil un petit HS :
Que penses tu de la méthode que je propose dans le fil auquel tu
participais : "Methode de remplissage avec AddItem" du 26/11. Je demande
car
je n'ai pas vu de réponse...
A+
Rv
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour Rv,
Excellente proposition puisque ça répond à la problématique du recordset
qui reste ouvert. Fi des éventuels ralentissements ;-)
Très belle construction du Recordset objRsSourceListe. Va falloir que
j'approfondisse ADO ! En tout cas, je ne connaissais pas ce principe.
Toutefois, j'ai un problème sur la ligne
Set Me.lstTest.Recordset = objRsSourceListe dans la procédure
initialiserListe, une erreur de compilation 'Membre de méthode ou de
données introuvable' (Access2000-SP3) sur la propriété Recordset
Pourrais-tu m'indiquer comment y remédier ? car j'aimerais bien tester
intégralement ta procédure.
Salut Eric,
Au fait, puisque je te retrouve dans ce fil un petit HS :
Que penses tu de la méthode que je propose dans le fil auquel tu
participais : "Methode de remplissage avec AddItem" du 26/11. Je demande
car
je n'ai pas vu de réponse...
A+
Rv
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour Rv,
Excellente proposition puisque ça répond à la problématique du recordset
qui reste ouvert. Fi des éventuels ralentissements ;-)
Très belle construction du Recordset objRsSourceListe. Va falloir que
j'approfondisse ADO ! En tout cas, je ne connaissais pas ce principe.
Toutefois, j'ai un problème sur la ligne
Set Me.lstTest.Recordset = objRsSourceListe dans la procédure
initialiserListe, une erreur de compilation 'Membre de méthode ou de
données introuvable' (Access2000-SP3) sur la propriété Recordset
Pourrais-tu m'indiquer comment y remédier ? car j'aimerais bien tester
intégralement ta procédure.Salut Eric,
Au fait, puisque je te retrouve dans ce fil un petit HS :
Que penses tu de la méthode que je propose dans le fil auquel tu
participais : "Methode de remplissage avec AddItem" du 26/11. Je demande
car
je n'ai pas vu de réponse...
A+
Rv
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Zut, j'avais mal testé! Je pensais avor réalisé le test sous access2000 mais
j'ai simplement testé avec Access2002 sur une base au format Access2000.
Du coup j'ai mis à jour le fil.
Merci
A+
Zut, j'avais mal testé! Je pensais avor réalisé le test sous access2000 mais
j'ai simplement testé avec Access2002 sur une base au format Access2000.
Du coup j'ai mis à jour le fil.
Merci
A+
Zut, j'avais mal testé! Je pensais avor réalisé le test sous access2000 mais
j'ai simplement testé avec Access2002 sur une base au format Access2000.
Du coup j'ai mis à jour le fil.
Merci
A+