Vba 使用onclick按钮访问vb子窗体

Vba 使用onclick按钮访问vb子窗体,vba,ms-access,Vba,Ms Access,首先,我知道我的问题有点简单,但我对这方面很陌生。 我有一个表单,包含按钮生成、子表单结果、表1。目标是,我希望我的子窗体在单击按钮后显示查询结果 以下是我编写的代码: Private Sub generate_btn_Click() Dim qry As String qry = "select * from Table1;" Me.result_sbfrm.Form.RecordSource = qry End Sub 它返回错误2467您输入的表达式引用的对象已关

首先,我知道我的问题有点简单,但我对这方面很陌生。 我有一个表单,包含按钮生成、子表单结果、表1。目标是,我希望我的子窗体在单击按钮后显示查询结果

以下是我编写的代码:

Private Sub generate_btn_Click()
    Dim qry As String
    qry = "select * from Table1;"
    Me.result_sbfrm.Form.RecordSource = qry
End Sub
它返回错误2467您输入的表达式引用的对象已关闭或不存在


调试在Me.result_sbfrm.Form.RecordSource=qry处停止,错误消息告诉您,您正在尝试设置一个已关闭对象的记录源,因此请先打开它

我已经很长时间没有使用VBA或Access了,但类似于

Private Sub generate_btn_Click()
    Dim qry As String
    qry = "select * from Table1;"
    DoCmd.OpenForm "result_sbfrm"
    Forms!result_sbfrm.RecordSource = qry 
End Sub

@哈拉曼:你知道MS Access吗?如错误所示,您的结果\u sbfrm不存在。检查子表单名称是否正确,或者检查其指定的名称是否与表单名称不同。@haraman是操作错误地标记了vb.net。通过查看过程结构,您应该知道它根本不是vb.net子对象^^@krishKM,这也可能意味着表单没有打开/加载。如果表单未打开,则无法引用表单上的任何内容。。。。。即使表单确实存在。@Fred是的,您是正确的。@Fred和krishKM感谢您的输入,是的,结果\u sbfrm确实存在。我通过按CTRL+Space在上面使用intellisense,结果是\u sbrfm在那里谢谢你的帮助Fred,谢谢你的帮助Fred,实际上这对我的问题没有帮助,但我可以通过你给出的代码理解错误发生的逻辑。我已经找到了确切的解决方案,首先我们必须创建只显示查询的表单,并使用我们想要的查询设置源,然后我们在主表单中创建子表单,并创建事件以使用我们之前放置的查询调用该表单。