The brackets are absolutely required when the table names or control names or field names have internal spaces, optional otherwise. You can certainly translate the filter to eliminate the [] using string functions, if you're sure that you don't have internal spaces in any relevant names, and if you're sure that you want to. It would look something like this:
Code:
Me.Filter = Replace (Replace (Me.Filter, "]", ""), "[", "")
Here's a page that lists all the string functions, (and the rest) http://www.techonthenet.com/access/functions/
Please note that there are occasional situations where Access or Jet decides that the brackets are NOT optional, and I can't guarantee you won't run into one of those at any given time.