VBA 更新子窗体记录源



快速简便(可能)适合您。

我的主窗体在选项卡控件中有很多子窗体。其中一些子窗体具有自己的基于查询的子窗体,并且该查询在父窗体上具有条件输入控件。

正如您可以想象的那样,在加载主页表单时,我必须在弹出框中输入所有参数,因为子表单/查询也在加载。

我的解决方法是将这些查询子表单记录源设置为" 然后,一旦应用 where 条件的用户控件更新,它就会将其记录源更改为查询。

只是,我的代码(如下)不起作用。盯着它看了半个小时后,我不知道为什么,它没有产生任何错误,它什么也没做。

所有字段/记录都有 #NAME?

Private Sub txt_EventID_AfterUpdate()
Me.txt_forcefocus.SetFocus
Me.sub_SpeakerOnboarding.Form.RecordSource = qry_SpkrOnboard
Me.Requery
End Sub

我还尝试了以下方法:

Private Sub txt_EventID_AfterUpdate()
Me.txt_forcefocus.SetFocus
Me.sub_SpeakerOnboarding.Form.RecordSource = qry_SpkrOnboard
Me.Refresh
End Sub

再次没有结果,什么都没有...所有字段/记录都有 #NAME?

希望我错过了一些简单的东西,否则我将不得不重新考虑整个表单设计

RecordSource是一个字符串:

Private Sub txt_EventID_AfterUpdate()
Me.txt_forcefocus.SetFocus
Me.sub_SpeakerOnboarding.Form.RecordSource = "qry_SpkrOnboard"
End Sub

引用子窗体上的控件:

Value = Me![SubformControlNAME].Form![txt_EventID].Value

最新更新