En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies pour vous proposer des contenus et services adaptés. Mentions légales.

Recherche

Recherche

Les mémos

Je débute...

Visites

 1225022 visiteurs

 15 visiteurs en ligne

Nous contacter

Contact

Filtres personnalisés

Filtres personnalisés sur formulaire en affichage continu

L'exemple ci-dessous suppose 3 zones de listes modifiables :

  • ListeTextes
  • ListeNombres
  • ListeDates

placées dans l'entête d'un formulaire avec affichage en mode continu.

Private Sub FiltrerEnrg()
    Dim strFiltre As String

    If (Not IsNull(ListeTextes)) Then
        strFiltre = "[ChampTexte]='" & ListeTextes & "' AND "
    End If

    If (Not IsNull(ListeNombres)) Then
        strFiltre = strFiltre & "[ChampNumerique]=" & ListeNombres & " AND "
    End If
    If (Not IsNull(ListeDates)) Then
        strFiltre = strFiltre & "[ChampDate]=#" & ListeDates & "# AND "
    End If
    If (strFiltre = "") Then
        Me.Filter = ""
        Me.FilterOn = False
    Else
        strFiltre = "(" & Left$(strFiltre, Len(strFiltre) - 5) & ")"
        Me.Filter = strFiltre
        Me.FilterOn = True
    End If
End Sub

'Dans l'événement "sur après mise à jour" de chacune d'elles, on appellera tout simplement la routine FiltrerEnrg :

Private Sub ListeTextes_AfterUpdate()
    FiltrerEnrg
End Sub

  

Private Sub ListeNombres_AfterUpdate()
    FiltrerEnrg
End Sub

  

Private Sub ListeDates_AfterUpdate()
    FiltrerEnrg
End Sub

  

'On adaptera ce code en fonction du nombre exact de zones de listes, des noms réels des champs et contrôles et du type des données etc...


Catégorie : Les mémos - Formulaires
Page lue 10542 fois

Vous êtes ici :   Accueil » Filtres personnalisés