1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| Sub AppliquerFiltre()
Dim CL As Control
Dim TxtFiltre As String
Dim rs As Recordset
Dim t As String
For Each CL In Me.Controls
Debug.Print CL.Name
Select Case Mid(CL.Name, 5)
Case "LIBELLE_PROJET"
If Not VideNull(CL.Value) Then
AjouteListe TxtFiltre, "(UCASE([" & Mid(CL.Name, 5) & "])LIKE ""*" & UCase(CL.Value) & "*"")", " AND "
End If
Case "CA_PAYS", "CA_ACTEUR"
If Not VideNull(CL.Value) Then
AjouteListe TxtFiltre, "([" & Mid(CL.Name, 5) & "]=" & CL.Value & ")", " AND "
End If
End Select
Next CL
If Not VideNull(Me.MIN_DATE_ENRG) Then
AjouteListe TxtFiltre, "([DATE_ENRG]>=#" & Format(Me.MIN_DATE_ENRG, "mm/dd/yyyy") & "#)", " AND "
End If
If Not VideNull(Me.MAX_DATE_ENRG) Then
AjouteListe TxtFiltre, "([DATE_ENRG]<=#" & Format(Me.MAX_DATE_ENRG, "mm/dd/yyyy") & "#)", " AND "
End If
If Len(TxtFiltre) > 0 Then
Me.RecordSource = "SELECT * FROM [PRJ0_TRI_PROJET] WHERE " & TxtFiltre & ";"
Else
Me.Form.RecordSource = "PRJ0_TRI_PROJET"
End If
Me.Requery
Me.PRJ0_SR1_PROJET.Requery
End Sub |
Partager