Option Compare Database
Private Sub SearchFor_Change()
[COLOR="DarkGreen"] 'Create a string (text) variable[/COLOR]
Dim vSearchString As String
[COLOR="DarkGreen"] 'Populate the string variable with the text entered in the Text Box SearchFor[/COLOR]
vSearchString = SearchFor.Text
[COLOR="DarkGreen"] 'Pass the value contained in the string variable to the hidden text box SrchText,
'that is used as the sear4ch criteria for the Query QRY_SearchAll[/COLOR]
SrchText.Value = vSearchString
[COLOR="DarkGreen"] 'Requery the List Box to show the latest results for the text entered in Text Box SearchFor[/COLOR]
Me.SearchResults.Requery
[COLOR="DarkGreen"]
'Tests for a trailing space and exits the sub routine at this point
'so as to preserve the trailing space, which would be lost if focus was shifted from Text Box SearchFor[/COLOR]
If Len(Me.SrchText) <> 0 And InStr(Len(SrchText), SrchText, " ", vbTextCompare) Then
[COLOR="DarkGreen"] 'Set the focus on the first item in the list box[/COLOR]
Me.SearchResults = Me.SearchResults.ItemData(1)
Me.SearchResults.SetFocus
[COLOR="DarkGreen"] 'Requery the form to refresh the content of any unbound text box that might be feeding off the record source of the List Box[/COLOR]
DoCmd.Requery
[COLOR="DarkGreen"] 'Returns the cursor to the the end of the text in Text Box SearchFor,
'and restores trailing space lost when focus is shifted to the list box[/COLOR]
Me.SearchFor = vSearchString
Me.SearchFor.SetFocus
Me.SearchFor.SelStart = Me.SearchFor.SelLength
Exit Sub
End If
[COLOR="DarkGreen"] 'Set the focus on the first item in the list box[/COLOR]
Me.SearchResults = Me.SearchResults.ItemData(1)
Me.SearchResults.SetFocus
[COLOR="DarkGreen"] 'Requery the form to refresh the content of any unbound text box that might be feeding off the record source of the List Box[/COLOR]
DoCmd.Requery
[COLOR="DarkGreen"] 'Returns the cursor to the the end of the text in Text Box SearchFor[/COLOR]
Me.SearchFor.SetFocus
If Not IsNull(Len(Me.SearchFor)) Then
Me.SearchFor.SelStart = Len(Me.SearchFor)
End If
End Sub