Why not do it?

Personally, I don't use a subform for this. I use a listbox. The listbox has a query as a source. The query refers to the fields for the date range. The code behind the submit-button tells the listbox to requery.
The alternative is to build the SQL-string for the query for the listbox (just a property) dynamically in the code behind the button. Then you don't need to define it in the Query tab.