FilterOn sur Formulaire

Le
Lolo
Bonjour,

Dans une base access 2003, j'ai un formulaire avec un sous-formulaire.
Je procéde à des filtrage sur le formulaire principal. Je test le filtrage
de ce formulaire pour affichier le nombre d'enregistrements.
On peut également faire un filtrage dans le sous formulaire.
Mon problème est que quand aucun filtre n'est appliqué sur mon formulaire
principal et qu'un filtre est appliqué sur le sous formulaire l'expression au
niveau du formulaire Me.filterOn est à True.
Comment tester que seul le formulaire a un filtrage actif ?
Merci d'avance.
Questions / Réponses high-tech
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
Raymond [mvp]
Le #6666731
Bonjour.

normalement les deux filtres agissent séparémment et peuvent avoir des
valeurs différentes. est-ce que tu testes bien le bon filteron à partir du
bon formulaire ?
1- pour qu'un filteron soit à true, il faut également que le filter ne soit
pas null, si filter="" ==> filteronúlse.
2- selon où l'on se trouve:
- sur le formulaire principal,
Me.sousFormulaire4.Form.Filter = "1=1"
Me.Filter = ""
Me.sousFormulaire4.Form.FilterOn = True
Me.FilterOn = False
MsgBox Me.FilterOn & ";" & Me.sousFormulaire4.Form.FilterOn
doit afficher Faux;Vrai

- sur le sous-formulaire,
Me.Parent.Filter = "1=1"
Me.Filter = ""
Me.FilterOn = False
Me.Parent.FilterOn = True
MsgBox Me.FilterOn & ";" & Me.Parent.FilterOn
doit afficher Faux;Vrai

3- autre test:
- sur le formulaire principal:
Me.sousFormulaire4.Form.Filter = "1=1"
Me.Filter = ""
Me.sousFormulaire4.Form.FilterOn = True
Me.FilterOn = False
MsgBox Me.FilterOn & ";" & Me.sousFormulaire4.Form.FilterOn
doit afficher Faux;Vrai

- sur le sous-formulaire,
MsgBox Me.FilterOn & ";" & Me.Parent.FilterOn
doit afficher Vrai;Faux

vérifie donc si tu testes bien la bonne propriété du bon objet.

--
@+
Raymond Access MVP http://OfficeSystemAccess.seneque.net/
http://officesystem.access.over-blog.com/
http://access2007.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/


"Lolo"
| Bonjour,
|
| Dans une base access 2003, j'ai un formulaire avec un sous-formulaire.
| Je procéde à des filtrage sur le formulaire principal. Je test le filtrage
| de ce formulaire pour affichier le nombre d'enregistrements.
| On peut également faire un filtrage dans le sous formulaire.
| Mon problème est que quand aucun filtre n'est appliqué sur mon formulaire
| principal et qu'un filtre est appliqué sur le sous formulaire l'expression
au
| niveau du formulaire Me.filterOn est à True.
| Comment tester que seul le formulaire a un filtrage actif ?
| Merci d'avance.
Lolo
Le #6667301
Bonjour Raymond et Merci pour ta réponse.
L'expression Me.FilterOn est vrai car même si j'avais affecté Me.FilterOn =
False,
Comme tu l'as fait remarquer Me.Filter n'était pas égal à Null.
En le mettant à Null cela fonctionne bien.


Bonjour.

normalement les deux filtres agissent séparémment et peuvent avoir des
valeurs différentes. est-ce que tu testes bien le bon filteron à partir du
bon formulaire ?
1- pour qu'un filteron soit à true, il faut également que le filter ne soit
pas null, si filter="" ==> filteronúlse.
2- selon où l'on se trouve:
- sur le formulaire principal,
Me.sousFormulaire4.Form.Filter = "1=1"
Me.Filter = ""
Me.sousFormulaire4.Form.FilterOn = True
Me.FilterOn = False
MsgBox Me.FilterOn & ";" & Me.sousFormulaire4.Form.FilterOn
doit afficher Faux;Vrai

- sur le sous-formulaire,
Me.Parent.Filter = "1=1"
Me.Filter = ""
Me.FilterOn = False
Me.Parent.FilterOn = True
MsgBox Me.FilterOn & ";" & Me.Parent.FilterOn
doit afficher Faux;Vrai

3- autre test:
- sur le formulaire principal:
Me.sousFormulaire4.Form.Filter = "1=1"
Me.Filter = ""
Me.sousFormulaire4.Form.FilterOn = True
Me.FilterOn = False
MsgBox Me.FilterOn & ";" & Me.sousFormulaire4.Form.FilterOn
doit afficher Faux;Vrai

- sur le sous-formulaire,
MsgBox Me.FilterOn & ";" & Me.Parent.FilterOn
doit afficher Vrai;Faux

vérifie donc si tu testes bien la bonne propriété du bon objet.

--
@+
Raymond Access MVP http://OfficeSystemAccess.seneque.net/
http://officesystem.access.over-blog.com/
http://access2007.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/


"Lolo"
| Bonjour,
|
| Dans une base access 2003, j'ai un formulaire avec un sous-formulaire.
| Je procéde à des filtrage sur le formulaire principal. Je test le filtrage
| de ce formulaire pour affichier le nombre d'enregistrements.
| On peut également faire un filtrage dans le sous formulaire.
| Mon problème est que quand aucun filtre n'est appliqué sur mon formulaire
| principal et qu'un filtre est appliqué sur le sous formulaire l'expression
au
| niveau du formulaire Me.filterOn est à True.
| Comment tester que seul le formulaire a un filtrage actif ?
| Merci d'avance.





Publicité
Poster une réponse
Anonyme