|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2007 Messages : 37 ![]() |
Bonjour,
Le contexte : J'ai un formulaire 1 ouvert qui contient un bouton "recherche". Le clic sur le bouton ouvre un formulaire 2 de recherche. L'utilisateur introduit des critères et lance la recherche. Le résultat est mis dans une liste (sur le formulaire 2). L'utilisateur doit sélectionner une ligne de la liste et revenir sur le formulaire 1 qui doit afficher les données qui correspondent à la sélection. La question : comment faire pour que le formulaire 1 affiche les données qui correspondent à la sélection faite dans le formulaire 2 ? Comme le formulaire 1 est déjà ouvert, un docmd.openform ne me paraît pas la bonne solution. Merci d'avance à toute bonne idée ou exemple. |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 085 ![]() |
Bonjour,
C'est très vague tout ça. Quelle liste utilises-tu dans form 1 pour afficher le résultat ? Dans tous les cas tu doit regarder le tuto sur les appels formulaires sur ma page perso. Il y a les syntaxes pour les discussion d'un form à un autre. Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
|
00
|
|
|
#3 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2007 Messages : 37 ![]() |
Merci pour ta réponse, loufab.
Je vais expliquer la chose avec un exemple. Disons que le formulaire 1 affiche les données sur une personne (nom, date de naissances, adresse, etc.). La source est un query sauvegardé avec idPersonne pour identifiant. Ce formulaire contient un bouton qui ouvre le formulaire 2 (DoCmd.OpenForm formulaire2, acNormal). Le formulaire 2 est une recherche multicritère du genre "remplissez ce que vous cherchez" : il y a plusieurs champs (nom, code postal, localité, etc.) que l'utilisateur peut remplir ou laisser vides, et un bouton "Recherche". Le clic sur ce bouton prépare une requête en SQL (MyQuery) et la met comme source dans une zone de liste (Me.zResultat.RowSource = MyQuery). Comme il peut y avoir plusieurs lignes dans cette liste (1 ligne = 1 personne), l'utilisateur doit sélectionner celle qu'il recherchait (Me.zResultat = idPersonne de la ligne sélectionnée), fermer le formulaire 2 et ... c'est là que ça se complique : il faut que l'utilisateur revienne sur le formulaire 1 (qui était resté ouvert) et que ce soit la personne sélectionnée dans le formulaire 2 qui soit affichée dans le formulaire 1. Ce serait simple si je pouvais ouvrir le formulaire 1 sur la personne sélectionnée, mais je ne peux pas faire comme cela. Il faut que le formulaire 1 "bouge" jusqu'à la personne sélectionnée dans le formulaire 2. Merci d'avance pour tes conseils et tes idées. |
|
|
00
|
|
|
#4 | ||
|
Membre du Club
![]() Inscription : juin 2009 Messages : 86 ![]() |
ça ne marcherait pas avec un bookmark ?
par ex : Code :
|
||
|
|
00
|
|
|
#5 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2007 Messages : 37 ![]() |
Merci pour la suggestion.
Oui, peut-être. Je vais essayer. Je mets où ce code (quel form, quel evmt) ? |
|
|
00
|
|
|
#6 |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 085 ![]() |
En effet le Bookmark est la solution.
Il faut mettre ce code dans l'événement Après Maj de la liste de sélection de la personne. Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
|
00
|
Copyright © 2000-2012 - www.developpez.com