Bonjour,
J'aurai besoin d'un coup de main pour finaliser un formulaire de recherche multicritères. Merci d'avance pour ceux qui prendront le temps de bien vouloir jeter un petit coup d’œil.....
J'ai mis en place un formulaire de recherche Clients en fonction de différents critères selon le tuto de Caféine :
La configuration de la recherche est parfaite : possibilité de sélectionner les résultats par rapport à plusieurs champs différents.
Cependant il me manque 2 types de données (que j'ai essayé d'ajouter : tri par "CA" et par "effectif" et tri par "date de démarchage") qui sont des champs tous renseignés dans la même table client. Ainsi j'avais l'idée d'ajouter au formulaire type de recherche des filtres d'option : égal, < et >, afin de pouvoir sélectionner les entreprises ayant + de 50 salariés par exemple.
Et c'est là qu'est le problème : je n'arrive pas à aménager sur la base de la méthode Caféine ma requête SQL pour traiter ces informations.
Merci de bien vouloir m'éclairer et m'aider à finaliser ce formulaire.
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
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 Private Sub RefreshQuery() Dim SQL As String Dim SQLWhere As String SQL = "SELECT liste_client_N°, liste_client_raison_sociale, liste_client_nom, liste_client_prénom, liste_client_ville, liste_client_code_libellé, liste_client_nb_employés FROM T_Liste_clients Where T_Liste_clients!liste_client_N° <> 0 " If Not Me.chk_Type Then SQL = SQL & "And T_Liste_clients!liste_client_Type = '" & Me.cbo_Type_Client & "' " End If If Not Me.chk_Statut Then SQL = SQL & "And T_Liste_clients!liste_client_Statut = '" & Me.cbo_Statut_Client & "' " End If If Not Me.chk_Interet Then SQL = SQL & "And T_Liste_clients!liste_client_Interet = '" & Me.cbo_Interet_Client & "' " End If If Not Me.chk_Code_Naf Then SQL = SQL & "And T_Liste_clients!liste_client_code_naf = '" & Me.cbo_Code_Naf & "' " End If If Not Me.chk_Activite Then SQL = SQL & "And T_Liste_clients!liste_client_code_libellé = '" & Me.cbo_Activite & "' " End If If Not Me.chk_Categorie Then SQL = SQL & "And T_Liste_clients!liste_client_code_catégorie = '" & Me.cbo_Categorie_Naf & "' " End If If Not Me.chk_Raison_Sociale Then SQL = SQL & "And T_Liste_clients!liste_client_raison_sociale like '*" & Me.txt_Raison_Sociale & "*' " End If If Not Me.chk_Enseigne Then SQL = SQL & "And T_Liste_clients!liste_client_enseigne like '*" & Me.txt_Enseigne & "*' " End If If Not Me.chk_Nom Then SQL = SQL & "And T_Liste_clients!liste_client_nom like '*" & Me.txt_Nom_Client & "*' " End If If Not Me.chk_Ville Then SQL = SQL & "And T_Liste_clients!liste_client_ville like '*" & Me.txt_Ville & "*' " End If If Not Me.chk_Secteur Then SQL = SQL & "And T_Liste_clients!liste_client_secteur = '" & Me.cbo_Secteur & "' " End If If Not Me.chk_Pays17 Then SQL = SQL & "And T_Liste_clients!liste_client_pays17 = '" & Me.cbo_Pays17 & "' " End If SQLWhere = Trim(Right(SQL, Len(SQL) - InStr(SQL, "Where ") - Len("Where ") + 1)) SQL = SQL & ";" Me.lbl_Stats.Caption = DCount("*", "T_Liste_clients", SQLWhere) & " / " & DCount("*", "T_Liste_clients") Me.lst_Resultats.RowSource = SQL Me.lst_Resultats.Requery End Sub
Une dernière question pour la mise en forme des résultats dans la lst : comment intégrer à la requête un ordre de classement ? A chaque fois que j'ajoute IN ORDER [Champ] après le WHERE de la requête SQL, j'obtiens un message d'erreur.....
Bastiencito
Partager