Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Rafraichir formulaire principal en fonction modif sous-formulaire

3 réponses
Avatar
Laure
Bonjour,

J'ai un souci de rafraichissement, dans mon sous-formulaire, je veux mettre à jour le montant global inscrit sur mon formulaire sur l'évènement après MAJ de mon sous-formulaire.
J'ai essayé, .requery, .refresh et .repaint, cela ne marche qu'en mode debug .... avez-vous la solution miracle ??

Merci d'avance,
Cordialement,
Laure

3 réponses

Avatar
Buddy
Salut
Il n'est pas possible de le faire simplement.
Il faut que tu te penche du côté de WithEvents et surtout de la manière de l'employer.

En gros la logique serait : quand ton ssform est mis à jour, il doit "tirer" un évènement personnalisé du genre "J'ai été mis à
jour" à qui veut l'entendre. Dans ton cas, le form parent doit être à l'écoute du ssform afin d'intercepter l'évènement personnalisé
et de réaliser le traitement adéquat. (A l'écoute = même instance de variable globale correspondant à l'évènement tiré.)
Pour faire ceci, il faut t'accrocher un peu : modules de classes, variables globales, interception et gestion des évènements
personnalisés. Bref tout un programme.

Je te conseillerai pour faire simple de mettre un beau bouton sur le form parent qui te recalcule ton montant global.

Ouala
Bye
Buddy


"Laure" a écrit dans le message de news:
Bonjour,

J'ai un souci de rafraichissement, dans mon sous-formulaire, je veux mettre à jour le montant global inscrit sur mon formulaire
sur l'évènement après MAJ de mon sous-formulaire.

J'ai essayé, .requery, .refresh et .repaint, cela ne marche qu'en mode debug .... avez-vous la solution miracle ??

Merci d'avance,
Cordialement,
Laure


Avatar
jf.marchina
Voici une méthode que j'utilise pour résoudre certains problèmes de
rafraichissement.
Après modification dans un sous-formulaire, je ferme le formulaire
principal, puis le rouvre, mais cela de manière invisible, en
utilisant la méthode echo de l'objet application :

Exemple :

Application.Echo False
Docmd.Close acForm, "frm_Principal"
Docmd.OpenForm "frm_Principal"
Application.Echo True
Avatar
3stone
Salut,

"Marchina JF"
Voici une méthode que j'utilise pour résoudre certains problèmes de
rafraichissement.
Après modification dans un sous-formulaire, je ferme le formulaire
principal, puis le rouvre, mais cela de manière invisible, en
utilisant la méthode echo de l'objet application :

Exemple :

Application.Echo False
Docmd.Close acForm, "frm_Principal"
Docmd.OpenForm "frm_Principal"
Application.Echo True



Hmmm... Me.Requery fait de même...


--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------