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

 1218244 visiteurs

 5 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 10501 fois

Vous êtes ici :   Accueil » Filtres personnalisés