Brent,
Because macros don't provide for error handling, I have not used any in
years except for AutoExec and AutoKeys, so I don't try to answer macro
questions.
Solutions to this problem using a ComboBox have been posted in the past, so
it might be worth searching
http://groups.google.com for the archives of
this newsgroup, microsoft.public.access.reports, and
comp.databases.ms-access.
Basically, you add a Form (and reference it from your Switchboard) that
contains a Combo Box with a RowSource that is a Query against the
undocumented (at best "semi-documented") system tables that returns the list
of report names, and then refer to that Control in a DoCmd.OpenReport
statement (and I suspect that code will be included in some of the posts).
One that discusses this, from Don Leverton, in 1998, can be linked at
http://groups.google.com/[email protected]&rnum=9
I found it by using Advanced Search to search for the all of the terms:
"reports" "combo" "box" "select" in the newsgroup comp.databases.ms-access.
Even though that was in answer to a question about Access 97, it just worked
for me when I created an unbound Form, added a Combo Box named "cboReports",
and pasted the SQL into the RowSource. In the AfterUpdate event of that
Combo Box, I put the following code and it opened the Report (note: this
does not contain any error handling code!):
Private Sub cboReports_AfterUpdate()
DoCmd.OpenReport Me![cboReports], acViewPreview
End Sub
Larry Linson
Microsoft Access MVP