Pb filtre sur formulaire access
Fermé
JEYBY
-
17 nov. 2004 à 20:12
zenon Messages postés 726 Date d'inscription jeudi 30 septembre 2004 Statut Membre Dernière intervention 13 février 2010 - 18 nov. 2004 à 10:45
zenon Messages postés 726 Date d'inscription jeudi 30 septembre 2004 Statut Membre Dernière intervention 13 février 2010 - 18 nov. 2004 à 10:45
A voir également:
- Pb filtre sur formulaire access
- Photo filtre gratuit - Télécharger - Retouche d'image
- Formulaire de réclamation facebook - Guide
- Alias du formulaire - Forum Programmation
- Access denied - Forum Bbox Bouygues
- Formulaire de remboursement free pdf ✓ - Forum Vos droits sur internet
3 réponses
zenon
Messages postés
726
Date d'inscription
jeudi 30 septembre 2004
Statut
Membre
Dernière intervention
13 février 2010
181
17 nov. 2004 à 21:43
17 nov. 2004 à 21:43
Pas besoin de code VB pour faire ça.
Il faut que ton sous-formulaire soit lié au formulaire principal
(la clé primaire du formulaire principal étant présente ss forme de clé externe ds le ssformulaire)
En principe Access remplit automatiquement les champs père et fils (si les noms sont identiques en tous cas et si les données sont compatible (N°auto ou numérique)
A partir de là lorsque tu changes d'enregistrement dans le formulaire principal le ssformulaire est automatiquement mis à jour.
Il faut que ton sous-formulaire soit lié au formulaire principal
(la clé primaire du formulaire principal étant présente ss forme de clé externe ds le ssformulaire)
En principe Access remplit automatiquement les champs père et fils (si les noms sont identiques en tous cas et si les données sont compatible (N°auto ou numérique)
A partir de là lorsque tu changes d'enregistrement dans le formulaire principal le ssformulaire est automatiquement mis à jour.
J'ai bien noté zenon et ça marche comme tu dis, ça s'est quand l'utilisateur recherche une valeur du formulaire, ça met automatiquement à jour le sous formulaire. Mais dans l'autre sens, c-a-d, l'utilisateur sélectionne (ou tape) dans la zone de liste une valeur qui représente le critère de recherche. Ce critère s'applique à un champ du sous formulaire qui va être filtré (le formulaire sera automatiquement mis à jour par le biais des relations).
Y a-t-il une solution à mon pb ?
Merci.
JEYBY
Y a-t-il une solution à mon pb ?
Merci.
JEYBY
zenon
Messages postés
726
Date d'inscription
jeudi 30 septembre 2004
Statut
Membre
Dernière intervention
13 février 2010
181
18 nov. 2004 à 10:45
18 nov. 2004 à 10:45
Je ne suis pas sûr que ce soit très logique ni possible pour des raisons de structure.
En principe un enregistrement du formulaire renvoie à n enregistrements du ssformulaire. Tu ne devrais donc pas pouvoir sélectionner un enregistrement unique du formulaire en effectuant un tri sur le sous-formulaire à moins d'utiliser la clé externe mais alors inutile de passer par le sous-formulaire.
Une solution serait de récupérer la clé externe en triant les données de la table ssjacente au ss formulaire puis de filtrer le formulaire.
Il y a moyen de la faire "proprement" avec les recorsets mais je n'en suis pas capable...
Je triche en créant un formulaire qui reste masqué sur lequel j'applique le filter:
Sur clic ds la liste de choix:
DoCmd.OpenForm "NomDuForm",,"[CritèreX]=ListeDeChoix"
DoCmd.OpenForm "frm_p",,"CléPrimaire=CLéExterneDuFormPrécédent"
En principe un enregistrement du formulaire renvoie à n enregistrements du ssformulaire. Tu ne devrais donc pas pouvoir sélectionner un enregistrement unique du formulaire en effectuant un tri sur le sous-formulaire à moins d'utiliser la clé externe mais alors inutile de passer par le sous-formulaire.
Une solution serait de récupérer la clé externe en triant les données de la table ssjacente au ss formulaire puis de filtrer le formulaire.
Il y a moyen de la faire "proprement" avec les recorsets mais je n'en suis pas capable...
Je triche en créant un formulaire qui reste masqué sur lequel j'applique le filter:
Sur clic ds la liste de choix:
DoCmd.OpenForm "NomDuForm",,"[CritèreX]=ListeDeChoix"
DoCmd.OpenForm "frm_p",,"CléPrimaire=CLéExterneDuFormPrécédent"