Bonsoir,
j'essaie de construire un filtre en sélectionnant dans des listes
déroulantes des critères que j'utilise pour construire mon filtre, il semble
fonctionner correctement si je sélectionne mes info dans l'ordre de mon code
(d'abord cmbDiv puis cmbregime) mais si j'inverse cet ordre ça ne fonctionne
plus, pourquoi?
Private Sub btOK_Click()
Dim strFiltre As String
On Error Resume Next
strFiltre = ""
If Not IsNull(Me.cmbDiv) Then
strFiltre = "([DIV]='" & Me.cmbDiv & "')"
End If
If Not IsNull(Me.cmbregime) Then
If strFiltre = "" Then strFiltre = "([ELEREGIME]=" & Me.cmbregime & ")"
Else: strFiltre = strFiltre & " AND " & "([ELEREGIME]="
& Me.cmbregime & ")"
End If
Me.Caption = strFiltre
With Me.sfrm_recherche_résultat.Form
.Filter = strFiltre
.FilterOn = True
End With
End Sub
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
J-Pierre
Bonsoir,
Est-ce que tu exécutes du code sur certains évènements de tes listes déroulantes ?
J-Pierre
"pean.eric" a écrit dans le message de news:bq5rbk$v6h$
Bonsoir, j'essaie de construire un filtre en sélectionnant dans des listes déroulantes des critères que j'utilise pour construire mon filtre, il semble fonctionner correctement si je sélectionne mes info dans l'ordre de mon code (d'abord cmbDiv puis cmbregime) mais si j'inverse cet ordre ça ne fonctionne plus, pourquoi? Private Sub btOK_Click() Dim strFiltre As String
On Error Resume Next strFiltre = "" If Not IsNull(Me.cmbDiv) Then strFiltre = "([DIV]='" & Me.cmbDiv & "')" End If
If Not IsNull(Me.cmbregime) Then If strFiltre = "" Then strFiltre = "([ELEREGIME]=" & Me.cmbregime & ")" Else: strFiltre = strFiltre & " AND " & "([ELEREGIME]=" & Me.cmbregime & ")" End If
Me.Caption = strFiltre
With Me.sfrm_recherche_résultat.Form .Filter = strFiltre .FilterOn = True End With End Sub
Bonsoir,
Est-ce que tu exécutes du code sur certains évènements de tes listes déroulantes ?
J-Pierre
"pean.eric" <pean.eric@wanadoo.fr> a écrit dans le message de news:bq5rbk$v6h$1@news-reader2.wanadoo.fr...
Bonsoir,
j'essaie de construire un filtre en sélectionnant dans des listes
déroulantes des critères que j'utilise pour construire mon filtre, il semble
fonctionner correctement si je sélectionne mes info dans l'ordre de mon code
(d'abord cmbDiv puis cmbregime) mais si j'inverse cet ordre ça ne fonctionne
plus, pourquoi?
Private Sub btOK_Click()
Dim strFiltre As String
On Error Resume Next
strFiltre = ""
If Not IsNull(Me.cmbDiv) Then
strFiltre = "([DIV]='" & Me.cmbDiv & "')"
End If
If Not IsNull(Me.cmbregime) Then
If strFiltre = "" Then strFiltre = "([ELEREGIME]=" & Me.cmbregime & ")"
Else: strFiltre = strFiltre & " AND " & "([ELEREGIME]="
& Me.cmbregime & ")"
End If
Me.Caption = strFiltre
With Me.sfrm_recherche_résultat.Form
.Filter = strFiltre
.FilterOn = True
End With
End Sub
Est-ce que tu exécutes du code sur certains évènements de tes listes déroulantes ?
J-Pierre
"pean.eric" a écrit dans le message de news:bq5rbk$v6h$
Bonsoir, j'essaie de construire un filtre en sélectionnant dans des listes déroulantes des critères que j'utilise pour construire mon filtre, il semble fonctionner correctement si je sélectionne mes info dans l'ordre de mon code (d'abord cmbDiv puis cmbregime) mais si j'inverse cet ordre ça ne fonctionne plus, pourquoi? Private Sub btOK_Click() Dim strFiltre As String
On Error Resume Next strFiltre = "" If Not IsNull(Me.cmbDiv) Then strFiltre = "([DIV]='" & Me.cmbDiv & "')" End If
If Not IsNull(Me.cmbregime) Then If strFiltre = "" Then strFiltre = "([ELEREGIME]=" & Me.cmbregime & ")" Else: strFiltre = strFiltre & " AND " & "([ELEREGIME]=" & Me.cmbregime & ")" End If
Me.Caption = strFiltre
With Me.sfrm_recherche_résultat.Form .Filter = strFiltre .FilterOn = True End With End Sub