在 MS Access 中锁定导航窗格

lock navigate pane in ms access

我们正在 MS-Access 2010 中开发一个项目,用户将使用切换板作为导航的主菜单,并在表单中工作。我们使用登录名和密码保护每个表单,因此用户只能访问表单中的 his/her 条记录(使用 MS-Access 中的 vba 宏)。

现在我们想锁定控制面板,这样就没有人可以访问表和查询等对象。有谁知道如何在 MS-Access 中执行此操作?

感谢任何想法。

主页>选项>当前数据库>

取消选中 'Use Access special keys'

取消选中 'Display Navigation Pane'

也许还有:

取消选中 'Allow full menus'

取消选中 'Allow default shortcut menus'

构建自定义功能区

确保用户不知道 shift 键绕过,否则分发可执行 ACCDE

如果您希望以编程方式执行此操作,那么可以这样做:

Call DoCmd.LockNavigationPane(True)

但是,您最好隐藏导航 window 并在 6 月 7 日之前遵循一些建议。

一个简单的解决方案就是在表单打开事件中将表单模态 属性 设置为 true,如下所示:

    Private Sub Form_Open(Cancel As Integer)
       ' Go Modal to Lock Navigation Pane
       Me.Form.Modal = True
       ' Hide Navigation Pane
       DoCmd.NavigateTo "acNavigationCategoryObjectType"
       DoCmd.RunCommand acCmdWindowHide
       ' Hide Ribbon
       DoCmd.ShowToolbar "Ribbon", acToolbarNo
    End Sub

当然,将表单设置为模态模式可能并不适合所有情况,但如果您有启动/切换面板样式的表单可以打开所有其他表单,那么这可能是适合您的解决方案。