J'ai un formulaire basé sur une table, et un sous-formulaire basé sur une
autre table. Le champ "N° PFAI" est commun aux deux tables.
Je souhaite que lorsque je saisi le "N° PFAI" dans le formulaire, le
sous-formulaire soit filtré et n'affiche que les enregistrements
correspondant à ce numéro.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
3stone
Salut,
"d'arcimoles" | J'ai un formulaire basé sur une table, et un sous-formulaire basé sur une | autre table. Le champ "N° PFAI" est commun aux deux tables. | Je souhaite que lorsque je saisi le "N° PFAI" dans le formulaire, le | sous-formulaire soit filtré et n'affiche que les enregistrements | correspondant à ce numéro. | | Voici mon code : | | Private Sub N°_PFAI_AfterUpdate() | | Filtre = Me.N°_PFAI.Value | Me.T_Contrats_sous_formulaire("N° PFAI").SetFocus | Me.T_Contrats_sous_formulaire.SetFocus | DoCmd.FindRecord Filtre | Me.Filter = Filtre | Me.FilterOn = True | | End Sub | | La macro se lance bien après chaque saisie, mais le filtre ne fonctionne pas.
L'énoncé d'un filtre ressemble à ceci : "[Taille]5"
Des SetFocus et autre FindRecord sont superflus... Et, si tu souhaite filtrer le sous formulaire, cela ne peut fonctionner avec "Me" qui représente une instance du formulaire qui contien le code, donc ton form principal !
Mais le tout est inutile à condition d'avoir créé les bonnes relations entre les champs [N° PFAI] des deux tables!!! La "limitation" du sous form serait automatique...
"d'arcimoles"
| J'ai un formulaire basé sur une table, et un sous-formulaire basé sur une
| autre table. Le champ "N° PFAI" est commun aux deux tables.
| Je souhaite que lorsque je saisi le "N° PFAI" dans le formulaire, le
| sous-formulaire soit filtré et n'affiche que les enregistrements
| correspondant à ce numéro.
|
| Voici mon code :
|
| Private Sub N°_PFAI_AfterUpdate()
|
| Filtre = Me.N°_PFAI.Value
| Me.T_Contrats_sous_formulaire("N° PFAI").SetFocus
| Me.T_Contrats_sous_formulaire.SetFocus
| DoCmd.FindRecord Filtre
| Me.Filter = Filtre
| Me.FilterOn = True
|
| End Sub
|
| La macro se lance bien après chaque saisie, mais le filtre ne fonctionne pas.
L'énoncé d'un filtre ressemble à ceci : "[Taille]5"
Des SetFocus et autre FindRecord sont superflus...
Et, si tu souhaite filtrer le sous formulaire, cela ne peut fonctionner avec "Me" qui
représente une instance du formulaire qui contien le code, donc ton form principal !
Mais le tout est inutile à condition d'avoir créé les bonnes relations entre
les champs [N° PFAI] des deux tables!!!
La "limitation" du sous form serait automatique...
"d'arcimoles" | J'ai un formulaire basé sur une table, et un sous-formulaire basé sur une | autre table. Le champ "N° PFAI" est commun aux deux tables. | Je souhaite que lorsque je saisi le "N° PFAI" dans le formulaire, le | sous-formulaire soit filtré et n'affiche que les enregistrements | correspondant à ce numéro. | | Voici mon code : | | Private Sub N°_PFAI_AfterUpdate() | | Filtre = Me.N°_PFAI.Value | Me.T_Contrats_sous_formulaire("N° PFAI").SetFocus | Me.T_Contrats_sous_formulaire.SetFocus | DoCmd.FindRecord Filtre | Me.Filter = Filtre | Me.FilterOn = True | | End Sub | | La macro se lance bien après chaque saisie, mais le filtre ne fonctionne pas.
L'énoncé d'un filtre ressemble à ceci : "[Taille]5"
Des SetFocus et autre FindRecord sont superflus... Et, si tu souhaite filtrer le sous formulaire, cela ne peut fonctionner avec "Me" qui représente une instance du formulaire qui contien le code, donc ton form principal !
Mais le tout est inutile à condition d'avoir créé les bonnes relations entre les champs [N° PFAI] des deux tables!!! La "limitation" du sous form serait automatique...