Re-Bonjour à tous,
Je suis entrain d'essayer d'adapter la recherche multi-critères proposée sur ce site à un exemple personnel.
J'ai l'impression de faire exactement la même chose mais j'ai un problème:
Quand j'ouvre le formulaire de recherche, je vois bien la liste des produits qui s'affiche dans le cadre "lstResults", mais dès que je touche à un menu déroulant ou plus généralement à une case à cocher, tout s'efface dans le cadre "lstResults". Comme si ça ne s'actualisait pas...
Je vous mets le code pour voir si vous voyez quelquechose:
Option Compare Database
Private Sub chknom_Click()
If Me.chknom Then
Me.txtnom.Visible = False
Else
Me.txtnom.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkpays_Click()
If Me.chkpays Then
Me.cmbpays.Visible = False
Else
Me.cmbpays.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkType_Click()
If Me.chkType Then
Me.cmbtype.Visible = False
Else
Me.cmbtype.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkfilconso_Click()
If Me.chkfilconso Then
Me.cmbfilconso.Visible = False
Else
Me.cmbfilconso.Visible = True
End If
RefreshQuery
End Sub
Private Sub chkfildistri_Click()
If Me.chkfildistri Then
Me.cmbfildistri.Visible = False
Else
Me.cmbfildistri.Visible = True
End If
RefreshQuery
End Sub
Private Sub cmbpays_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbtype_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbfilconso_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub cmbfildistri_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Private Sub RefreshQuery()
Dim SQL As String
Dim SQLWhere As String
SQL = "SELECT Nom, Adresse, Pays, Type, Fil_consommé, Fil_distribué FROM Entreprises Where Entreprises!Nom <> 0 "
If Not Me.chknom Then
SQL = SQL & "And Entreprises!Nom like '*" & Me.txtnom & "*' "
End If
If Not Me.chkpays Then
SQL = SQL & "And Entreprises!Pays = '" & Me.cmbpays & "' "
End If
If Not Me.chkType Then
SQL = SQL & "And Entreprises!Type = '" & Me.cmbtype & "' "
End If
If Not Me.chkfilconso Then
SQL = SQL & "And Entreprises!Fil_consommé = '" & Me.cmbfilconso & "' "
End If
If Not Me.chkfildistri Then
SQL = SQL & "And Entreprises!Fil_distribué = '" & Me.cmbfildistri & "' "
End If
SQLWhere = Trim(Right(SQL, Len(SQL) - InStr(SQL, "Where ") - Len("Where ") + 1))
SQL = SQL & ";"
Me.lblStats.Caption = DCount("*", "Medias", SQLWhere) & " / " & DCount("*", "Medias")
Me.lstResults.RowSource = SQL
Me.lstResults.Requery
End Sub
Private Sub txtnom_BeforeUpdate(Cancel As Integer)
RefreshQuery
End Sub
Merci d'avance
Partager