【问题标题】:MS Access - RIght-Click on object is disabledMS Access - 右键单击​​对象已禁用
【发布时间】:2023-03-07 13:57:01
【问题描述】:

我最近从事了一项涉及使用 Access 数据库查找信息的工作。有问题的数据库是由在完成之前离开的开发人员构建的。他也没有留下任何文件。

数据库使用查询、表单和 VBA。一些查询不再有效,因为源数据的格式与开发数据库时的格式不同。我知道 SQL 和一些基本的 VBA,所以我正在尝试修改 SQL;但是,我无法查看查询背后的 SQL。我无法在设计视图或 SQL 视图中打开它。我什至不能右键单击任何对象。不仅如此,当我打开一个对象时,我无法右键单击顶部选项卡来关闭它。我必须使用右上角的红色 x。我试过在打开数据库时按住 shift 键,但它仍然会发生。我还去了:菜单选项工具->启动->查看是否未选中“允许默认快捷菜单”;然而,事实并非如此。我检查了其他论坛,但未能找到解决方案。我认为它可能在某个地方的 VBA 中,但是有大量的模块,每个模块中都有大量的子程序。我不知道它还能是什么。任何和所有的见解将不胜感激!

【问题讨论】:

  • 尝试在 VBA 代码中搜索 .AllowDesignChanges.ShortcutMenu
  • 感谢您的提示。我使用“当前项目”进行搜索,但不幸的是它没有返回任何一个属性的匹配项。
  • 嗯...我很确定有一种方法可以全局禁用快捷菜单,但不幸的是,我从来没有使用过它,所以我不确定如何通过 UI 来实现。也许搜索.Visible = False 看看你是否在CommandBars 上获得点击?
  • 启动代码要么从启动窗体调用,要么从 Autoexec 宏调用。从那里开始。
  • 也许这会有所帮助:stackoverflow.com/questions/15957315/…

标签: ms-access vba


【解决方案1】:

@Andre 和@Comintern 都提供了正确答案。罪魁祸首是 Auto Exec 函数,它有一个循环遍历每个 CommandBar 并设置 Enabled = False。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-04-29
    • 2014-11-03
    • 1970-01-01
    • 2014-12-22
    • 2013-10-05
    • 2012-07-01
    • 1970-01-01
    相关资源
    最近更新 更多