I had mentioned previously that changing the SQL string for a hidden pass-thru query will make it visible, but could not find that query property to set it back to hidden. Turns out that visibility is set at the application level, not the object level.

To test the visibility of an object, use this:

?Application.GetHiddenAttribute (acQuery,"MyQuery")

...and to change it, use this:

Application.SetHiddenAttribute acQuery,"MyQuery",True

...but of course, setting the hidden attribute only changes that object; to control whether objects with the hidden attribute will actually display, use this:

Application.SetOption "Show Hidden Objects", True

...note that the syntax is slightly different between these statements.