OVH Cloud OVH Cloud

filtrer un formulaire

2 réponses
Avatar
the viper
bonjour
je dois filtrer un formulaire en fonction de 3 critères qui peuvent ou non
se compléter entre eux. 1 liste déroulante et 2 champs textes (champs
Date/Heure dans la table)
Lorsque je fais un choix dans la liste déroulante, aucun problème mais dès
que je remplis un des champs textes de la façon suivante 01/01/2006 avec ou
sans choix dans la liste déroulante, une erreur apparait **voir code à ces 2
endroits (Message d'erreur: Erreur d'Exécution'2001' Opération annulée.)
C'est l'une ou l'autre ligne, ça dépend de la date inscrit et du champs ou
l'on saisi.

Si vous pouvez m'éclairer
Private Sub btn_rechercher_Click()
Dim strFiltre As String

'Filtre sur le nom du Client
' On Error Resume Next
strFiltre = ""
If Not IsNull(Me.liste_clients) Then
strFiltre = "([Clients]='" & Me.liste_clients & "')"
End If

'Filtre sur la période
If Not IsNull(Me.date_du) Then
If strFiltre <> "" Then strFiltre = strFiltre & " AND "
strFiltre = strFiltre & "([MAJ]>='" & Me.date_du & "')"
End If
If Not IsNull(Me.date_au) Then
If strFiltre <> "" Then strFiltre = strFiltre & " AND "
strFiltre = strFiltre & "([MAJ]<='" & Me.date_au & "')"
End If

Me.lblSQL.Caption = strFiltre

'Filtre le Sous Formulaire
With Me.sfrmRésultats.Form
.Filter = strFiltre '** A ces endroit se
.FilterOn = True '** passe l'erreur
End With
End Sub

Merci

2 réponses

Avatar
Eric
Bonjour,

Je suppose que MAJ est un champ de type Date/Heure, donc:

strFiltre = strFiltre & "[MAJ]>=" & Format(Me.date_du,"#mm/dd/yyyy#")

idem pour Me.date_au

bonjour
je dois filtrer un formulaire en fonction de 3 critères qui peuvent ou non
se compléter entre eux. 1 liste déroulante et 2 champs textes (champs
Date/Heure dans la table)
Lorsque je fais un choix dans la liste déroulante, aucun problème mais dès
que je remplis un des champs textes de la façon suivante 01/01/2006 avec ou
sans choix dans la liste déroulante, une erreur apparait **voir code à ces 2
endroits (Message d'erreur: Erreur d'Exécution'2001' Opération annulée.)
C'est l'une ou l'autre ligne, ça dépend de la date inscrit et du champs ou
l'on saisi.

Si vous pouvez m'éclairer
Private Sub btn_rechercher_Click()
Dim strFiltre As String

'Filtre sur le nom du Client
' On Error Resume Next
strFiltre = ""
If Not IsNull(Me.liste_clients) Then
strFiltre = "([Clients]='" & Me.liste_clients & "')"
End If

'Filtre sur la période
If Not IsNull(Me.date_du) Then
If strFiltre <> "" Then strFiltre = strFiltre & " AND "
strFiltre = strFiltre & "([MAJ]>='" & Me.date_du & "')"
End If
If Not IsNull(Me.date_au) Then
If strFiltre <> "" Then strFiltre = strFiltre & " AND "
strFiltre = strFiltre & "([MAJ]<='" & Me.date_au & "')"
End If

Me.lblSQL.Caption = strFiltre

'Filtre le Sous Formulaire
With Me.sfrmRésultats.Form
.Filter = strFiltre '** A ces endroit se
.FilterOn = True '** passe l'erreur
End With
End Sub

Merci


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
the viper
Merci Beaucoup


Bonjour,

Je suppose que MAJ est un champ de type Date/Heure, donc:

strFiltre = strFiltre & "[MAJ]>=" & Format(Me.date_du,"#mm/dd/yyyy#")

idem pour Me.date_au

bonjour
je dois filtrer un formulaire en fonction de 3 critères qui peuvent ou non
se compléter entre eux. 1 liste déroulante et 2 champs textes (champs
Date/Heure dans la table)
Lorsque je fais un choix dans la liste déroulante, aucun problème mais dès
que je remplis un des champs textes de la façon suivante 01/01/2006 avec ou
sans choix dans la liste déroulante, une erreur apparait **voir code à ces 2
endroits (Message d'erreur: Erreur d'Exécution'2001' Opération annulée.)
C'est l'une ou l'autre ligne, ça dépend de la date inscrit et du champs ou
l'on saisi.

Si vous pouvez m'éclairer
Private Sub btn_rechercher_Click()
Dim strFiltre As String

'Filtre sur le nom du Client
' On Error Resume Next
strFiltre = ""
If Not IsNull(Me.liste_clients) Then
strFiltre = "([Clients]='" & Me.liste_clients & "')"
End If

'Filtre sur la période
If Not IsNull(Me.date_du) Then
If strFiltre <> "" Then strFiltre = strFiltre & " AND "
strFiltre = strFiltre & "([MAJ]>='" & Me.date_du & "')"
End If
If Not IsNull(Me.date_au) Then
If strFiltre <> "" Then strFiltre = strFiltre & " AND "
strFiltre = strFiltre & "([MAJ]<='" & Me.date_au & "')"
End If

Me.lblSQL.Caption = strFiltre

'Filtre le Sous Formulaire
With Me.sfrmRésultats.Form
.Filter = strFiltre '** A ces endroit se
.FilterOn = True '** passe l'erreur
End With
End Sub

Merci


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr