【问题标题】:Access VBA DoCmd.OpenQuery Issue访问 VBA DoCmd.OpenQuery 问题
【发布时间】:2017-02-14 22:46:39
【问题描述】:

我遇到了一个非常烦人的问题,该问题在其他 Access 数据库中一直运行良好。

作为测试,我有一个带有按钮的表单。 点击事件按钮是运行一个简单的查询,这是VBA:

Private Sub Command0_Click()

DoCmd.SetWarnings False

DoCmd.OpenQuery "mktbl_qry_Useable_Leads", acViewNormal, acEdit

DoCmd.SetWarnings True

End Sub

非常简单直接,但是,我经常收到宏弹出列表,要求我选择一个子例程。

这是有原因的吗? 我尝试了其他具有相同结果的查询以及另一个具有相同问题的空白表格。它快把我逼疯了。

非常感谢您的帮助。

【问题讨论】:

  • 运行查询不应显示宏对话框。看起来您的数据库已损坏。尝试创建新的 accdb 并将所有对象从当前数据库复制到新数据库。
  • @Fionnuala 上面的示例可以/将隐藏哪些警告,db.Execute 不会?向侧边栏的 OP 道歉。顺便说一句,你试过紧凑型和维修吗?
  • 谢谢大家。我很傻,忘记了在 Access 中,您不能在调试中在表单/表单按钮上运行代码,同时在另一个模块中调用子路由。自从我上次构建访问数据库以来已经有一段时间了。在表单视图中运行时运行良好。

标签: ms-access vba ms-access-2013


【解决方案1】:

您可以使用数据库对象来运行查询。对于简单查询,您无需在数据库窗口中创建查询

CurrentDB.Execute "qdRunUpdateQuery", dbFailOnError + dbSeeChanges

CurrentDB.Execute "Update article set price = 10 where id=23", dbFailOnError + dbSeeChanges

【讨论】:

    猜你喜欢
    • 2018-12-22
    • 2012-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多