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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
| Private Function funetEvenement()
Dim strSQL As String, strUser As String, strSecteur As String, strÉdifice As String, strEvent As String
Dim vaListe As Variant
Dim db As DAO.Database
Dim qdf As DAO.QueryDef
strSecteur = ""
strUser = ""
strÉdifice = ""
strEvent = ""
If Me.lstUser.ItemsSelected.Count > 0 Then
For Each vaListe In lstUser.ItemsSelected
If strUser = "" Then
strUser = "IN(" & lstUser.ItemData(vaListe)
Else
strUser = strUser & ", " & lstUser.ItemData(vaListe)
End If
Next
strUser = strUser & ")"
End If
If Me.lstSecteur.ItemsSelected.Count > 0 Then
For Each vaListe In lstSecteur.ItemsSelected
If strSecteur = "" Then
strSecteur = "IN(" & lstSecteur.ItemData(vaListe)
Else
strSecteur = strSecteur & ", " & lstSecteur.ItemData(vaListe)
End If
Next
strSecteur = strSecteur & ")"
End If
If Me.lstÉdifice.ItemsSelected.Count > 0 Then
For Each vaListe In lstÉdifice.ItemsSelected
If strÉdifice = "" Then
strÉdifice = "IN(" & lstÉdifice.ItemData(vaListe)
Else
strÉdifice = strÉdifice & ", " & lstÉdifice.ItemData(vaListe)
End If
Next
strÉdifice = strÉdifice & ")"
End If
If Me.lstTypeÉvènement.ItemsSelected.Count > 0 Then
For Each vaListe In lstTypeÉvènement.ItemsSelected
If strEvent = "" Then
strEvent = "IN(" & lstTypeÉvènement.ItemData(vaListe)
Else
strEvent = strEvent & ", " & lstTypeÉvènement.ItemData(vaListe)
End If
Next
strEvent = strEvent & ")"
End If
strSQL = "SELECT tblEvenement.Date_Évènement, tblEvenement.Heure_Évènement, tblEvenement_Type.Titre_évènement, "
strSQL = strSQL & "tblEvenement.Note, tblSecteur.Nom_Secteur, tblEdifice.Nom_Edi, tblEdifice.Adresse, tblUsager_Info.Nom, "
strSQL = strSQL & "tblUsager_Info.Prénom, tblUsager_Info.Fonction "
strSQL = strSQL & "FROM tblEvenement_Type INNER JOIN (((tblEvenement INNER JOIN tblUsager_Info ON tblEvenement.Utilisateur.Value "
strSQL = strSQL & "= tblUsager_Info.NUMERO_USAGER) INNER JOIN tblSecteur ON tblEvenement.NUMERO_SECTEUR "
strSQL = strSQL & "= tblSecteur.NUMERO_SECTEUR) INNER JOIN tblEdifice ON tblEvenement.NUMERO_BATIMENT "
strSQL = strSQL & "= tblEdifice.NUMERO_EDI) ON tblEvenement_Type.NUMERO_TYPE_EVENEMENT = tblEvenement.Type_Évènement "
strSQL = strSQL & "WHERE (((tblUsager_Info.NUMERO_USAGER)>1"
If strUser <> "" Then
strSQL = strSQL & " And (tblUsager_Info.NUMERO_USAGER) " & strUser & ")"
Else
strSQL = strSQL & ")"
End If
If strSecteur <> "" Then
strSQL = strSQL & " AND ((tblSecteur.NUMERO_SECTEUR) " & strSecteur & ")"
End If
If strÉdifice <> "" Then
strSQL = strSQL & " AND ((tblEdifice.NUMERO_EDI) " & strÉdifice & ")"
End If
If strEvent <> "" Then
strSQL = strSQL & " AND ((tblEvenement_Type.NUMERO_TYPE_EVENEMENT) " & strEvent & ")"
End If
If Me.txtDébut <> "" And Not IsNull(Me.txtDébut) Then
strSQL = strSQL & " AND ((tblEvenement.Date_Évènement)>=#" & Me.txtDébut & "#)"
End If
If Me.txtFin <> "" And Not IsNull(Me.txtFin) Then
strSQL = strSQL & " AND ((tblEvenement.Date_Évènement)<=#" & Me.txtFin & "#)"
End If
strSQL = strSQL & ");"
Set db = CurrentDb
Set qdf = db.QueryDefs("rqEvent")
qdf.SQL = strSQL
Set qdf = Nothing
Set db = Nothing
End Function |
Partager