从 Access 中的另一个子窗体更改子窗体的记录源

Posted

技术标签:

【中文标题】从 Access 中的另一个子窗体更改子窗体的记录源【英文标题】:Change a subform's recordsource from another subform in Access 【发布时间】:2010-03-20 16:46:07 【问题描述】:

我使用的是 MS Access 2003,我有一个包含两个未嵌套的子表单(subform1 和 subform2)的表单。它们都在它们上显示表格数据,因此它们不能嵌套。我想根据 subform1 上当前记录中的值更改 subform2 上的记录源。

我试图将代码放在 subform1 的 oncurrent 事件中,但我似乎无法从 subform1 引用 subform2 中的记录源。从 subform1 我尝试过 me.parent!subform2.form.recordsource 但我收到运行时错误“2455”您输入的表达式对属性表单/报告的引用无效。

有什么想法吗?

【问题讨论】:

subform1 是否打开?如果表单当前未打开,我认为您不能引用表单中的任何内容(代码或数据值)。 【参考方案1】:

确保 subform2 是子表单控件的名称,而不是包含的表单。虽然它们通常具有相同的名称,但它们可以不同。

me.parent.subform2.form.recordsource

见http://www.mvps.org/access/forms/frm0031.htm

【讨论】:

恐怕这行不通。我仍然收到 2455“您输入的表达式对属性表单/报告的引用无效” 您提供的链接中的文档具有嵌套子表单的语法,但没有引用第二个非嵌套子表单的语法。还有什么想法吗?

以上是关于从 Access 中的另一个子窗体更改子窗体的记录源的主要内容,如果未能解决你的问题,请参考以下文章

更新子窗体 Access 2010 时出错

在 Access 2007 中更改子窗体的 SourceObject 时失去更改属性的能力

基于主窗体中的字段访问2007过滤器子窗体?

如何遍历所有子窗体 MS Access VBA

在一个子窗体中的控件上使用 AfterUpdate 事件来重新查询另一个子窗体中的控件

Microsoft Access - 子窗体中的组合框基于主窗体组合框