Ik heb een apart formulier om records te zoeken gemaakt.
Als ik hierin waardes invul zou ik graag records kunnen filteren.
de code tot dusverre is:
Maar nu volgt er een foutopsporing bij:
Gebruik ik de varWhere verkeerd?
Als ik hierin waardes invul zou ik graag records kunnen filteren.
de code tot dusverre is:
Code:
Private Sub cmdSearch_Click()
Dim varWhere As Variant
Dim rs As DAO.Recordset
' Begin met Null
varWhere = Null
' Als Customer niet leeg is
If Not IsNull(Me.cmbCustomer) Then
' .. dan toon berichtvenster OK!
MsgBox "Zoekwaarde OK!", vbInformation, "Zoeken"
End If
' Als IDnumber niet leeg is
If Not IsNull(Me.txtIDnumber) Then
' .. dan maak zoek string
varWhere = "([IDnumber] LIKE '" & Me.txtIDnumber & "*');"
MsgBox varWhere, vbInformation, "Zoeken"
End If
' Is er een zoek string gemaakt?
If IsNull(varWhere) Then
MsgBox "U moet tenminste één zoek criterium ingeven.", vbCritical, "Zoeken: Error!"
Exit Sub
Else
MsgBox "Er is een zoek string gevormd.", vbInformation, "Zoeken"
End If
' Controleer of een recordset gevonden wordt met de zoekcriteria
Set rs = CurrentDb.OpenRecordset("SELECT tblProductions.* FROM tblProductions WHERE " & varWhere)
' Als geen records gevonden
If rs.RecordCount = 0 Then
' .. dan berichtvenster Geen items gevonden
MsgBox "Er zijn geen items die voldoen aan uw criteria.", vbInformation, "Zoeken: resultaat"
Else
' anders toon aantal gevonden records
MsgBox "Er zijn " & rs.RecordCount & " items gevonden.", vbInformation, "Zoeken: resultaat"
End If
' Open frmProductions met filter
DoCmd.OpenForm "frmProductions", WhereCondition:=varWhere
' Zet focus op frmProductions
Forms!frmProductions.SetFocus
End Sub
Maar nu volgt er een foutopsporing bij:
Code:
' Open frmProductions met filter
DoCmd.OpenForm "frmProductions", WhereCondition:=varWhere
Gebruik ik de varWhere verkeerd?