Kenneth Ismert
kismert at gmail.com
Mon Jan 30 11:04:19 CST 2012
Brad, One thought: have code behind each report that sets up your custom filtering. Use a standard public method name. Then, use CallByName to setup the report: CallByName(Reports("name"), "SetupFilter", VbMethod) This way, the filter code that is specific to a report stays with that report. I used to be much more of a purist in VBA, but I got spoiled by languages like JavaScript that support functional programming. See: Can Your Programming Language Do This? http://www.joelonsoftware.com/items/2006/08/01.html So, I think your approach fine. Big nested If or Case statements should be avoided, especially if they must be touched every time a new report is added. -Ken