我有一个 Access 2010 数据库,主表中有文档信息。
我有显示表中特定文档类型信息(信用卡对帐单、发票等(的表单。
我有一个主窗体,带有单独的子窗体,每个子窗体代表特定的文档类型。 我希望能够从主窗体进行筛选,以便每个文档类型子窗体仅显示属于用户指定的美元金额范围内的文档。
我在想,如果我可以让子窗体在主窗体之后打开(与此相反是默认顺序(,我可以在每个子窗体的打开事件中设置过滤器,从主窗体,并获得我想要的结果。
我发现导致子窗体在主窗体之后打开的是从子窗体的"属性"表的"数据"选项卡中删除 SourceObject;然后在主窗体的打开事件中将子窗体名称分配给 vba 中的 SourceObject 属性。
我的例子是Me.MySubForm.Form.SourceObject = "frmSubFormName",其中左边的所有内容都是逐字的,frmSubFormName是我的子窗体的名称。
这并没有通过编译器 - 它抱怨MySubForm,不幸的是,带有示例的帖子/博客在将SourceObject属性分配给我的子窗体名称时没有指示"MySubForm"是什么。
对这种过滤方法有什么想法吗?
任何人都可以阐明设置SourceObject的语法;或者提供另一种在主表单之后加载子窗体的方法?
提前谢谢。
删除 Form 类对象引用。建议将子窗体容器控件命名为与其包含的对象不同的对象,例如 ctrSomething
Me.ctrSomething.SourceObject = "frmSubFormName"