我一直遇到这个错误,我无法设置子窗体的记录源。
只是一些背景,有问题的表格是这样构造的:frm1View是我的未绑定主表单,其中包含2个子表单,subfrm1Particulars和subfrm1Datasheet。问题在于subfrm1Particulars,它本身在选项卡控件中包含2个子表单。
我试图根据在其他子表单中找到的记录动态地在subfrm1Particulars中更改子表单的记录源(一个子表单显示已完成的课程,另一个显示已安排的课程;想法是删除他们已经安排的课程从该子表格视图完成。)
我使用以下代码来执行此动态记录源更改。代码包含在subfrm1Particulars(包含subfrmScheduledCourses)中
strSQL = *blah blah blah where etc etc not like etc*
Me.subfrmScheduledCourses.Form.Recordsource= strSQL
我已经多次检查过,我的子窗体控件名称是正确的(尽管我的子窗体与控件的名称相同,所以可能就是这个问题)。我有几乎完全相同的表单配置在另一种形式,具有相同的代码(即相同的记录源和SQL语句和分配记录源的方法),它完美的工作,所以我不知道为什么这不起作用。
它给出了一个错误3251.我在子窗体控件的On Enter事件中运行它(在我的两个表单中出现此特定代码)。
任何帮助都非常感谢!!
答案 0 :(得分:0)
引用子表单对象可能很棘手,特别是来自其他子表单。尝试以不同方式调用对象:
Forms!frm1View!subfrm1Particulars.Form!subfrmScheduledCourses.Form.RecordSource
通过从mainform导航到子窗体到所需区域,它开始引用表单对象。