2

我有一个创建文本文件的函数,需要从数据宏运行它。因此,甚至可以在桌子上使用它。我该怎么做呢?

4

2 回答 2

4

你没有,根据我们的聊天。数据宏甚至在 MS Access 之外运行,如果它们使用 MS Access 中的代码,则不会发生这种情况。它们与数据库引擎相关联,数据库引擎对 Access 前端一无所知。

您可以从数据宏 AFAIK 运行查询,并且可以创建查询以写入文件*,但您不能运行 VBA。

* 我对此进行了更多研究,发现:“数据宏中不允许包含链接表、操作查询和数据库引用的查询。”

于 2012-09-10T13:21:32.660 回答
4

您可以这样做,但不建议这样做。请记住,表触发器和存储过程代码确实独立于 VBA 运行,事实上,即使您没有安装 Access,它也会运行。

但是,假设您将使用 Access 始终编辑数据(一个合理的假设),那么您实际上可以让表宏调用 VBA 代码。有几种方法可以做到这一点,但最常见和最有用的是将 SetLocalVar 设置为 VBA 函数。这有一个额外的好处,就是能够将一些值传递给在大多数情况下可能需要的函数。

因此,请记住,您可以调用 VBA 代码,但随后您将创建从表到 VBA 的依赖关系。

所以只需对一些虚拟变量使用 SetLocalVar,并将 VBA 函数放在表达式中。

于 2012-09-10T16:01:12.520 回答