Access 2003: filtrer un formulaire par le biais d'un autre formulaire

Access 2003: filtrer un formulaire par le biais d'un autre formulaire - VB/VBA/VBS - Programmation

Marsh Posté le 26-04-2011 à 11:57:09    

Bonjour,  
 
Je suis sous Access 2003 et j'utilise VBA pour filtrer un formulaire.
 
Ce formulaire F_pilotage est liée à une requête (source du formulaire).
 
Aujourd'hui, j'applique directement mon filtre par le formulaire.
C'est à dire que j'ai mes listes déroulantes et mon bouton "Activer filtre" qui permettent d'appliquer le filtre, et le bouton "Désactiver filtre" qui efface le contenu des listes déroulantes et réinitialise le filtre.
J’ai réussi à cumuler plusieurs paramètres de filtres
 
 
Ce que je veux faire :
Je commence à avoir de plus en plus de paramètres à filtrer.
Le problème, c’est que dans l’aspect visuel de mon formulaire, la section relative aux filtres commence à prendre beaucoup de place.
J’ai donc créé un autre formulaire F_tri où j’ai collé le code du filtre.
 
Mon problème est que mon filtre fait appel aux champs de mon premier formulaire et je n’arrive pas à faire la liaison…
Je vois un souci dans mon code au niveau du ME, mais ne sais pas comment le régler.
 
Voici mon code :
 

Code :
  1. Private Sub cmd_filtre_on_Click()
  2. 'FILTRE FACTURABLE
  3. If Not IsNull(Me.select_facturable.Value) And Me.select_facturable.Value <> "" Then
  4. If filtre <> "" Then
  5. filtre = filtre & " AND inf_facturable = """ & Me.select_facturable.Value & """"
  6. Else
  7. filtre = "inf_facturable = """ & Me.select_facturable.Value & """"
  8. End If
  9. End If
  10. 'FILTRE A FACTURER
  11. If Not IsNull(Me.select_a_facturer.Value) And Me.select_a_facturer.Value <> "" Then
  12. If filtre <> "" Then
  13. filtre = filtre & " AND inf_a_facturer = """ & Me.select_a_facturer.Value & """"
  14. Else
  15. filtre = "inf_a_facturer = """ & Me.select_a_facturer.Value & """"
  16. End If
  17. End If
  18. 'FILTRE FACTURÉ
  19. If Not IsNull(Me.select_facture.Value) And Me.select_facture.Value <> "" Then
  20.     If Me.select_facture.Value = "Oui" Then
  21.     If filtre <> "" Then
  22.     filtre = filtre & " AND inf_facture <> 0"
  23.     Else
  24.     filtre = "inf_facture <> 0"
  25.     End If
  26.     End If
  27.    
  28.     If Me.select_facture.Value = "Non" Then
  29.     If filtre <> "" Then
  30.     filtre = filtre & " AND inf_facture is null"
  31.     Else
  32.     filtre = "inf_facture is null"
  33.     End If
  34.     End If
  35. End If
  36. Me.Filter = filtre
  37. Me.FilterOn = True
  38. Me.OrderBy = "PR"
  39. Me.OrderByOn = True
  40. End Sub


 
D’avance merci pour vos contributions.

Reply

Marsh Posté le 26-04-2011 à 11:57:09   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed