I often just reopen the form with a WHERE clause set to the data I want to filter by. As long as the form is already open this process is very quick and painless.
Example: DoCmd.OpenForm "FormName",,,"[City] = '" & Me.CitySearch & "'"
Post back if you need more help.