2017-10-17 21 views
0

在主窗体中,我以编程方式创建具有表作为其SourceObject的子窗体控件。子窗体控件没有自己的窗体(源对象不是窗体而是表格)。如何设置事件处理程序?

Dim frmNew As SubForm 

Set frmNew = CreateControl("01_MAIN_FORM", acSubform, acDetail, strTabDesired, , 200, nBottom + 500, 20000, 3000) 

frmNew.Name = "SomeName" 
frmNew.SourceObject = "Table.SomeTable" 

我的问题是:在容器我只能访问子窗体的OnEnter和的OnExit事件。

我想处理AfterUpdate事件。 如果我将使用Form作为Subform-Control的SourceObject,我可以在那里处理它。 但实际上我想避免创建大量的表单,以便稍后在主表单中链接它们。

有关于此的任何想法?

回答

0

您实际上可以通过“Form”属性引用子窗体事件。 在我的情况

Application.Forms("01_MAIN_FORM").Form("SomeName").Form.AfterUpdate = "SomeMacro" 

只要确保包含子窗体控件actally在形式上视图中打开,所以你必须在表单对象的有效引用的形式。

相关问题