MS Access:如何参考导航表单的子表单?

时间:2013-04-23 22:07:27

标签: ms-access

我的导航表单如下:

enter image description here

在Customers表单中有一个命令按钮,我想从Orders表单中调用public sub,但我无法弄清楚如何引用它。我试过了:

Forms!frmOrders.MyPublicSub("Arg")

但我收到错误“找不到引用的表格'frmOrders'。有谁知道如何正确地做到这一点?

谢谢。

2 个答案:

答案 0 :(得分:2)

如果您有一个VBA程序(SubFunction)已在Class Module中为Access对象(表单或报表)声明,那么您应该期望它的行为与专用于该对象。如果您想要一个可以从“其他地方”调用的过程,那么将其放在常规VBA Module中(并将其声明为Public,以确保)。

答案 1 :(得分:0)

虽然Gord Thompson上面说的是真的...有时候直接引用表单中的过程更容易...例如,如果你的过程在子表单中引用了几个控件本身。在这些情况下,您可以通过调用它来引用导航子表单:

Me.NavigationSubform.Form.YourPublicProcedure

但要小心......导航表格有一些问题......(正如我们所发现的那样)。您显然具有在正常的父表单/子表单关系中引用子表单的经验,如上面的代码...但导航表单在工作和处理方式上有所不同。我上面提交的代码将引用您的子表单public sub ...但如果您当前没有查看具有public sub的子表单,则会抛出异常。