0

我在表单的 VBA 中有一系列“on Change”启用/禁用子例程。

然而,当滚动表单查看记录时,只有主程序运行——子程序不运行。结果,显示响应的问题看起来不完整。

当查看/更改记录时,如何让子例程运行?

4

3 回答 3

0

我也发现 Access 表单事件有点难以使用/不可预测。对我有用的一件事是使用标签或文本框并将控制源设置为公式或调用我自己的 VBA 函数来完成我需要完成的工作。如果 GUI 不需要,您的控件也可能是不可见的。我怀疑这是最佳实践,但这个“模拟”事件对我有用。

于 2009-10-16T17:00:21.603 回答
0

OnChange 仅在相关对象更新时触发。如果您希望在滚动记录时运行代码,请将其放在表单的 OnCurrent 事件中。

于 2009-10-16T14:43:55.233 回答
0

如果您需要在列表中进行条件演示,那么连续的表单和事件将无法胜任。在某些情况下,条件格式可以完成这项工作,但只是为了外观——它不能执行显示/隐藏控件或更改下拉列表的行源或重新查询它们之类的事情。

从概念上讲,这样做是不可能的。表单级事件触发记录。滚动表单不会移动记录指针。

由于这个问题,我避免使用连续表格进行编辑。相反,我将明细子表单绑定到连续表单中选择的记录的 PK 值,然后明细表单可以执行它需要的所有条件格式。

于 2009-10-17T01:48:43.070 回答