0

我有一个 Access 2010 数据库,主表中有文档信息。
我有显示表格中特定文档类型信息(信用卡对帐单、发票等)的表格。
我有一个主表单,带有单独的子表单,每个子表单代表一个特定的文档类型。我希望能够从主表单中过滤,以便每个文档类型子表单仅显示落在用户指定的美元金额范围内的文档。

我在想,如果我可以让子表单在主表单之后打开(与此相反的是默认顺序),我可以在每个子表单的打开事件中设置过滤器,从主表单开始,然后得到我想要的结果。

我发现导致子表单在主表单之后打开的原因是从子表单的“属性”表的“数据”选项卡中删除 SourceObject;然后在主窗体的open事件中将子窗体名称赋给vba中的SourceObject属性。

我的例子是 Me.MySubForm.Form.SourceObject = "frmSubFormName",左边的所有内容都是逐字记录的,frmSubFormName 是我的子表单的名称。

这并没有通过编译器 - 它在抱怨 MySubForm,不幸的是,带有示例的帖子/博客在将 SourceObject 属性分配给我的子表单名称时并未指出“MySubForm”是什么。

对这种过滤方法有什么想法吗?

任何人都可以阐明设置 SourceObject 的语法吗?或者也许提供另一种在主表单之后加载子表单的方式?

提前致谢。

4

1 回答 1

2

删除 Form 类对象引用。建议将子表单容器控件命名为与其持有的对象不同的名称,例如ctrSomething

Me.ctrSomething.SourceObject = "frmSubFormName"

于 2017-07-06T05:09:28.433 回答