Bonjour,
je vient de faire un formulaire de recherche avec deux zone de filtre, une zone de texte qui permet de spécifier les lignes rechercher, un bouton de recherche et une zone de liste qu affiche les résultats.
voici le code VBA du bouton recherche:
les critères rechercheFab et rechercheChamp corresspondent aux deux zone permettant de filtrer une partie des données.
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 Private Sub Rechercher_Click() Dim strTable As String, strField As String, strCriteria As String, strSql As String Dim Criter As Variant strTable = Me.rechercheFab ' recupère le nom de la table strField = Me.rechercheChamp ' recupère le nom du champ If IsNull(strTable) Or IsNull(strField) Then ' l'une des listes est vide MsgBox "Vous devez sélectionner une table et un champ.", vbExclamation + vbOKOnly, "une erreur" Exit Sub End If ' compose le critere de recherche strCriteria = strTable & "." & strField & " Like """ & Me.zoneRecherche & """" ' construit la requête sql strSql = " SELECT distinctrow " & strTable & ".*" strSql = strSql & " FROM " & strTable strSql = strSql & " WHERE ((" & strCriteria & "));" Me.resultatRecherche.RowSource = strSql ' affecte sql a resultatRecherche Me.resultatRecherche.Requery ' recalcule la liste End Sub
le critère zoneRecherche représente la zone de texte ou l'on met un mot qui doit correspondre a une ligne que l on recherche
le dernier critère resultatRecherche corresspond à le la lzone de liste dans laquelle on doit récupérer et afficher les données.
Le gros PB c'est qu il ne se passe rien quand on appuie sur le bouton, il n 'affiche acun résultat.
Si qq voit ou est le problème ca m enleverait une grosse aiguille du pied.
merci d'avance![]()
Partager