1

(这是对此处先前问题的回答的后续行动。)

我有一个 Access 2010 数据库文件,其中包含一个带有Before Change数据宏的表:

数据宏

我可以在数据表视图中打开表格并添加行,并且数据宏的行为与预期一样。但是,如果我在设计视图中打开表格,打开数据宏进行编辑,做一些琐碎的事情,比如单击宏步骤之一旁边的 [+] 以展开详细信息,然后尝试保存我得到的“更改”错误

'LookUpRecord' 宏操作的 'Look Up A Record In' 参数的值无效。

我还尝试在新的 Access 2010 中从头开始创建宏.accdb并得到相同的错误。我在三台不同的机器上对此进行了测试:两台运行 64 位 Access 2010 的机器和一台运行 32 位 Access 2010 的机器。所有机器都通过 Microsoft 更新进行了全面修补。(也就是说,它们当前运行的是 14.0.7106.5003 版本。)

在测试时,我注意到这似乎与事件驱动的数据宏有关,该数据宏试图用于在数据宏应用的同一个LookUpRecord上执行 SELECT 。在其他表上执行 SELECT似乎不会触发错误。

我的问题是:

  1. 任何人都可以使用 Access 2010 的修补版本重现此问题吗?

  2. 任何人都可以使用未打补丁的 Access 2010 版本(例如,从早期版本中全新安装)对此进行测试,以查看后续补丁是否改变某些内容?

  3. 有没有人看到任何文档或 Internet 聊天表明特定表的事件驱动数据宏应该(或不应该能够LookUpRecord通过对自身执行 SELECT 来执行?

编辑——2013-12-19 14:10 UTC:

我刚刚使用 Access 2010 SP1 (14.0.6023.1000) 对此进行了测试并得到了相同的结果。

4

1 回答 1

2

我认为问题是表别名。如果您在布局模式下打开表格(只在设计模式下打开表格)。然后你会得到这个:

在此处输入图像描述

您现在可以自由编辑宏(例如展开操作),然后保存宏。

我怀疑这是一个意外错误,因为如果在设计模式下打开表,则表被锁定并且宏无法获取/检查验证查找命令中使用的 SQL。

请注意,如果您只是将表名放在宏设计器中,那么您就没有问题,这是 99% 的人在这种情况下所做的。

大多数人不知道你可以在这里自由输入 SQL !!!

保存后,设计器尝试根据表验证 SQL,但表在设计模式下被锁定。所以总的来说,这是一个错误,但很少有人遇到它,因为很少在查找记录命令中输入 SQL。

如前所述,我只是通过单击打开表格而不使用设计模式进行更改。并注意在上面的屏幕截图中,事件按钮是单独的按钮,并且在设计模式下打开表格时更容易点击。

请注意,为了直接从数据表视图编辑数据宏,数据库必须启用“为数据表视图中的表启用设计更改”选项:

dbOptions.png

如果未设置该选项,则在数据表视图中禁用数据宏按钮。

于 2013-12-19T16:23:20.950 回答