1
以下代码可以关闭Access导航窗格。MS-Access导航窗格是否可见?
DoCmd.NavigateTo "acNavigationCategoryObjectType"
DoCmd.RunCommand acCmdWindowHide
但问题是,如果导航窗格已经关闭,则该acCmdWindowHide只会隐藏任何其他对象(即表,表),它是开放的。 我在我的代码中使用了DoCmd.TransferDatabase,并且在执行此操作时,导航窗格有时会打开。如果出现有关数据导入的警告消息并且用户单击取消,则可能会发生这种情况。为了确保用户没有看到窗格我想隐藏它,但是如果它已经隐藏,那么没有什么可以隐藏的,但上面的命令只是隐藏了我的窗体,这不是我想要的。
线
DoCmd.NavigateTo "acNavigationCategoryObjectType"
始终执行,不返回任何东西。如果没有导航窗格导航到,它不会返回错误。
我的问题是:如何确定导航窗格当前是否打开,以便我知道必须关闭导航窗格。 或者我如何确保我关闭了导航窗格,但如果使用上面的代码,没有其他对象?
感谢,这对我的作品。但是有一个例外:如果任何过滤器仅用于在导航窗格中仅显示一些对象,并且此过滤器不允许CurrentObjectName,则上述代码不起作用,因为具有该名称的对象不能被选中。示例:“客户”过滤器用于仅显示名称类似客户的对象。如果上面的代码尝试选择即使导航窗格打开也无法选择的Employee,因为过滤器不允许它。隐藏导航窗格后,此过滤器不会消失。我的情况没有问题。 – Edgar