Filter Report Date in VBA

  • Thread starter Thread starter Jim
  • Start date Start date
J

Jim

I have an Access 2003 report that I'm trying to filter in VBA. I have a form
setup with radio buttons for selecting year to date or everything. I have a
Select Case statement in the On Open event of the report, but I don't know
the correct syntax for the filter. Currently this is in the Filter section
of the report: Year([dtmDate]) = Year(Now()) and it works, but what is the
correct syntax forVBA and also to tell it to show all records for option 2?
Thanks

Jim
 
You should use the OpenReport method's WhereCondition
argument to specify the filter. That way the report has no
need to be aware of what in on some form.

Another way to have a report prompt the user for criteria before it
runs is to open a form from the report's Open event. Open the form in
Dialog mode so that the report waits for the form to be closed or
hidden before it proceeds. That way you can collect criteria from the
user and build a Where clause for the report. You can also do other
things like hiding and showing detail sections based on the user's
preference.

It also means that you can call the report directly - you don't need
to call it from a form. The benefit is that the selection form is
reusable - it can be called from multiple reports if they need the
same criteria.

I've posted examples of this technique on our free J Street Downloads
page at http://ow.ly/M58Y
See "Report Selection Techniques".

Armen Stein
Microsoft Access MVP
www.JStreetTech.com
 
Back
Top