2

我在 Access 表单后面有几个用 VBA 编码的按钮。我将有许多表单,它们的页脚中有这些按钮(新、下一个、上一个、重复等)。这些按钮不是标准的宏,但足够简单,可以在我的所有表单中使用相同的代码。

我该如何编写这些按钮(在所有表单中都具有相同的名称......类似于模板),所以我不必在所有表单中复制粘贴代码?有没有办法在模块中编写这些按钮并让表单导入该模块的文本(有点像大多数其他语言)?

只是好奇。使代码更简洁/更容易,因为编程的核心是我自己的,但其他人将对表单代码进行小幅编辑。

4

2 回答 2

3

最简单的做法是Function在标准代码模块中为每个按钮的功能创建一个。然后将每个按钮的 Click 属性从更改为[Event Procedure]与该按钮对应的函数的名称(例如,=MyPrevFunction([Form]))。

请注意,为了使其工作,您必须专门使用Function而不是Sub. VBA 中没有要求函数返回任何内容,因此只需将单词替换FunctionSub进行更改所需的全部内容。

在 On Click 事件中显示 =MyButtonFunction([Form]) 的属性表屏幕截图

一张图片胜过千言万语。

于 2012-05-28T19:30:40.330 回答
2

与@mwolfe02 建议的想法一样,您可以将按钮放在子表单中,这意味着只需要编辑一组按钮,或者更好的是,设置您自己的自定义菜单。这些可以在每个表单的基础上调用,也可以作为应用程序的“标准”菜单调用。您甚至可以拥有自己的右键菜单。

于 2012-05-28T19:51:42.650 回答