Bonjour,
Je bloque sur mon projet.
J'ai une fenêtre qui appel une requête.
Cette requête répertorie une liste d'infos que je visualise avec un formulaire "hist_sie" (l'historique des mes sorties de matériel).
Dans ce formulaire j'aimerais donner la possibilité à la personne qui utilise l'application de filtrer les données (qui seront assez conséquentes en terme de lignes).
Pour cela j'ai créer des combobox.
Quand je sélectionne une info dans une combo, après la mise à jour de cette combo, je filtre mon formulaire.
Si je sélectionne plusieurs infos (plusieurs combos renseignée), idem, je n'affiche que les lignes contenant les infos sélectionnée dans mes combos.
Ensuite je bloque...
J'aimerais également donner la possibilité à l’utilisateur de filtrer sur une date ou/et une chekbox...
Voici le code que j'ai mis pour le moment et qui gère très bien les combobox..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 Private Sub MAJ_Filtre() Dim strFilter As String FilterOn = False 'Concaténation du filtre selon ce qui a été saisie If Len(Me.Cmb_adh) <> 0 Or Not IsNull(Me.Cmb_adh) Then strFilter = "[nom_adh] = '" & Me.Cmb_adh & "' AND " If Len(Me.cmb_Nom_prod) <> 0 Or Not IsNull(Me.cmb_Nom_prod) Then strFilter = strFilter & "[nom_prod] = '" & Me.cmb_Nom_prod & "' AND " If Len(Me.Cmb_descr_prod) <> 0 Or Not IsNull(Me.Cmb_descr_prod) Then strFilter = strFilter & "[descr_prod] = '" & Me.Cmb_descr_prod & "' AND " If Len(Me.Cmb_utilisateur) <> 0 Or Not IsNull(Me.Cmb_utilisateur) Then strFilter = strFilter & "[nom_util] = '" & Me.Cmb_utilisateur & "' AND " 'Si il y a eu saisie If IsNull(strFilter) = True Then 'si toutes les combo de critère filtre sont vides alors pas de filtres FilterOn = False ElseIf Len(strFilter) <> 0 Then 'sinon je filtre 'Suppression du dernier AND strFilter = Left(strFilter, Len(strFilter) - 5) DoCmd.ApplyFilter "", strFilter End If 'Me.BtRetour.SetFocus End Sub
Je souhaitais également vous montrer une image de mon formulaire.
J’espère que vous pourrez m'aider...
Merci par avance
Partager