访问确认消息

我有一个保存在一个网络位置,以便任何600名员工谁在公司工作的可以访问数据库访问数据库。 当他们打开主窗体运行生成表查询。 然而,有从MS Access陈述弹出“您运行生成表查询,将在您的表修改数据。是否要继续?”

如果他们不按YES所以我想取消此提示,以便它不要求他们的形式将无法正常运行。 我从选项更改​​的设置>编辑/查找>确认菜单,以便它不显示此确认。 然而,这显然是一个本地设置,以便执行本的每个用户将不得不改变这些设置。

是否有任何其他可能的解决方案来抑制确认消息?

--------------解决方案-------------

是的,从VBA:

DoCmd.ShowWarnings False ' Don't show warning popup
DoCmd.RunQuery "MyMakeTableQuery" ' Run the make table query silently
DoCmd.ShowWarnings True ' Turn warnings back on

有这么多错在这里,我几乎不知道从哪里开始:

  1. 你不可能有600人使用的Access数据库。
  2. 如果不止一个人将其打开并运行MakeTable,这将打破,因为你会做这两个用户之间的碰撞结构变化。
  3. 关闭错误通知是一个巨大的错误。 你不知道究竟你最后可能会忽略这些错误。
  4. 关闭SetWarnings意味着你可以从一个SQL DML语句不一致的更新,然后你就没有办法知道哪些数据被更新或没有。
  5. MakeTable查询不会在任何生产应用程序的归属。 相反,创建一个持久表,清理出来的新记录追加到它。 但它并不在主应用程序属于 - 这是临时数据的非常定义,因为它不断地被取代,因此它需要在一个单独的临时数据库。
  6. 你很可能希望所有用户都因此没有冲突,如果超过一个开在同一时间的应用程序有自己的临时数据库。

使用DoCmd.SetWarnings False ,从弹出阻止消息框。 然而,要注意的是,这个动作是全局的访问应用程序。 你必须要重新启用警告DoCmd.SetWarnings True需要。

你也可以试试:

Application.SetOption "Confirm Action Queries", False

如果你还没有,你可能需要有一个隐藏的表单打开每次打开数据库时。 你可以使用这种形式的OnOpen事件来运行像上面的启动代码。

分类:MS访问 时间:2015-03-15 人气:0
本文关键词: MS访问
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.445 (s). 10 q(s)