état avec plusieurs variantes

Le
Guy du Lac
Bonjour à tous,

J'ai un état qui selon le formulaire qui l'appelle afficherait les résultats
demandés. Comment puis-je faire pour savoir quel est le formulaire activé? Je
voudrais utiliser quelque chose qui ressemble à cela dans la procédure ON
LOAD de mon état.

select case formulaire_ouvert
case "formulaire1"
la requete1

case "formulaire2"
la requete2
end select



--
Merci,
Guy du Lac
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Gilbert
Le #6300831
Bonjour,

Tu peux utiliser le paramètre OpenArgs lors de l'ouverture de ton état par
ton formulaire.
DoCmd.OpenReport(ReportName, View, FilterName, WhereCondition, WindowMode,
OpenArgs)

Si tu utilises une version de Access (avant 2002 je crois) dans laquelle ce
paramètre n'existe pas, tu peux définir une variable globale dans un module.
Et tu initialises cette variable dans ton formulaire avant l'ouverture de
ton état;

Cordialement

Gilbert


"Guy du Lac" news:
Bonjour à tous,

J'ai un état qui selon le formulaire qui l'appelle afficherait les
résultats

demandés. Comment puis-je faire pour savoir quel est le formulaire activé?
Je

voudrais utiliser quelque chose qui ressemble à cela dans la procédure ON
LOAD de mon état.

select case formulaire_ouvert
case "formulaire1"
la requete1

case "formulaire2"
la requete2
end select



--
Merci,
Guy du Lac


Guy du Lac
Le #6300751
Bonjour Gilbert,

Je n'ai jamais utilisé de paramètre avant. Pourrais-tu m'expliquer comment
fonctionne le openArg et ou je met l'info pour que cela s'exécute.
--
Merci,
Guy du Lac



Bonjour,

Tu peux utiliser le paramètre OpenArgs lors de l'ouverture de ton état par
ton formulaire.
DoCmd.OpenReport(ReportName, View, FilterName, WhereCondition, WindowMode,
OpenArgs)

Si tu utilises une version de Access (avant 2002 je crois) dans laquelle ce
paramètre n'existe pas, tu peux définir une variable globale dans un module.
Et tu initialises cette variable dans ton formulaire avant l'ouverture de
ton état;

Cordialement

Gilbert


"Guy du Lac" news:
Bonjour à tous,

J'ai un état qui selon le formulaire qui l'appelle afficherait les
résultats

demandés. Comment puis-je faire pour savoir quel est le formulaire activé?
Je

voudrais utiliser quelque chose qui ressemble à cela dans la procédure ON
LOAD de mon état.

select case formulaire_ouvert
case "formulaire1"
la requete1

case "formulaire2"
la requete2
end select



--
Merci,
Guy du Lac







Gloops
Le #6300691
Salut,

J'ai utilisé OpenArgs dans Access 95, c'est bien pratique.

Si on ne veut pas mettre tous les paramètres (et potentiellement se
tromper dans le nombre de virgules), on peut l'utiliser en paramètre no mmé :

DoCmd.OpenReport NomDeLetat, OpenArgs:=NomDuFormulaireAppelant

et dans le code de l'état on retrouve OpenArgs avec la même valeur.
______________________________________
Gilbert a écrit, le 28/07/2007 15:59 :
Bonjour,

Tu peux utiliser le paramètre OpenArgs lors de l'ouverture de ton é tat par
ton formulaire.
DoCmd.OpenReport(ReportName, View, FilterName, WhereCondition, WindowMo de,
OpenArgs)

Si tu utilises une version de Access (avant 2002 je crois) dans laquell e ce
paramètre n'existe pas, tu peux définir une variable globale dans u n module.
Et tu initialises cette variable dans ton formulaire avant l'ouverture de
ton état;

Cordialement

Gilbert


Gloops
Le #6300681
Guy du Lac a écrit, le 28/07/2007 17:12 :
Bonjour Gilbert,

Je n'ai jamais utilisé de paramètre avant. Pourrais-tu m'expl iquer comment
fonctionne le openArg et ou je met l'info pour que cela s'exécute.


Ah, j'avais la berlue, je n'ai pas vu ta réponse avant d'avoir tapà © la
mienne ...

Pour ouvrir l'état tu utilises l'instruction DoCmd.OpenReport, j'ima gine
? Gilbert t'a indiqué comment la modifier (et j'y ai ajouté mon grain de
sel) pour y passer un paramètre.

Une fois que c'est fait, dans le code de l'état, tu retrouves OpenAr gs,
où tu peux lire la valeur passée. On peut mettre Me.OpenArgs si je me
rappelle bien, mais je suppose que les deux doivent passer.

Pour plus de détails et des exemples, tu peux aussi, dans la fenê tre
d'exécution (qui s'ouvre par Ctrl G), taper OpenArgs puis la touche F1.

3stone
Le #6300601
Salut,

"Gloops"
J'ai utilisé OpenArgs dans Access 95, c'est bien pratique.

Si on ne veut pas mettre tous les paramètres (et potentiellement se
tromper dans le nombre de virgules), on peut l'utiliser en paramètre nommé :

DoCmd.OpenReport NomDeLetat, OpenArgs:=NomDuFormulaireAppelant

et dans le code de l'état on retrouve OpenArgs avec la même valeur.



Avec Access 95 ??

Fort, très fort !
Car cela n'existe que depuis Access 2002 pour les états!

Cela devait sûrement être dans les formulaires...

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)

Gloops
Le #6312191
3stone a écrit, le 29/07/2007 21:55 :
et dans le code de l'état on retrouve OpenArgs avec la même valeur .



Avec Access 95 ??

Fort, très fort !
Car cela n'existe que depuis Access 2002 pour les états!

Cela devait sûrement être dans les formulaires...



Effectivement, c'était entre formulaires, d'ailleurs entre autres ça
servait à rouvrir le formulaire appelant.

Pour les états le besoin a dû mettre plus longtemps à apparaître :
souvent on ouvre un état à partir d'un formulaire, donc le formulaire
peut contenir une variable publique.

Mais c'est vrai que si on est susceptible d'ouvrir l'état à partir de
plusieurs endroits, une variable dans un module risque d'être mieux, il
n'y a pas à ouvrir le module la contenant avant de la définir. D'où , à
force, l'intérêt d'une syntaxe plus simple. C'est vrai que ce
raffinement m'avait échappé.


Publicité
Poster une réponse
Anonyme