Here is the VBA.
Expand|Select|Wrap|Line Numbers
- Option Compare Database
- Option Explicit
- Private Sub btnClear_Click()
- Dim intIndex As Integer
- ' Clear all search items
- Me.txtID = ""
- Me.txtLast = ""
- Me.txtFirst = ""
- End Sub
- Private Sub btnSearch_Click()
- Dim test As String
- ' Update the record source
- Me.FrmTest5.Form.RecordSource = "SELECT * FROM tblcastmemberinfo " & BuildFilter
- ' Requery the subform
- Me.FrmTest5.Requery
- End Sub
- Private Sub Form_Load()
- ' Clear the search form
- btnClear_Click
- End Sub
- Private Function BuildFilter() As Variant
- Dim varWhere As Variant
- varWhere = Null ' Main filter
- ' Check for LIKE Perner
- If Me.txtID > "" Then
- varWhere = varWhere & "[Learner ID] LIKE '*" & Me.txtID & "*' AND "
- End If
- ' Check for LIKE Last Name
- If Me.txtLast > "" Then
- varWhere = varWhere & "[Last] LIKE '*" & Me.txtLast & "*' AND "
- End If
- ' Check for LIKE First Name
- If Me.txtFirst > "" Then
- varWhere = varWhere & "[First] LIKE '*" & Me.txtFirst & "*' AND "
- End If
- ' Check if there is a filter to return...
- If IsNull(varWhere) Then
- varWhere = ""
- Else
- varWhere = "WHERE " & varWhere
- ' strip off last "AND" in the filter
- If Right(varWhere, 5) = " AND " Then
- varWhere = Left(varWhere, Len(varWhere) - 5)
- End If
- End If
- BuildFilter = varWhere
- End Function