我有一个主窗体,1,里面的子窗体,2,以及弹出窗体,3。
表单2 和表单3 是数据表。 表单1 中的按钮会打开弹出表单3 。
目前,在表单2 中,我捕获当前选定的记录并使用以下code设置查询:
查询是名为strSQL的var。
是否可以将strSQL设置为表单2 的属性,因此我可以将表单3 记录源设置为 Forms!1!2.forms!strSql ?如果没有,我有什么选择将数据从表单2 移动到表单3 ,它们没有关联,所以我不能使用OpenArgs。
答案 0 :(得分:1)
你可以使用OpenArgs这样的东西。如果需要,可以在OpenArgs中传递SQL字符串。实际上,只要正确解析它们,就可以在OpenArgs中传递MULTIPLE SQL字符串。我有一个应用程序,我使用OpenArgs将3个变量传递给另一个表单,我管道分隔它们(也就是说,我使用管道键“|”分隔每个变量,然后在它们到达另一个表单时解析它们) 。你绝对可以使用这种方法来完成你想要做的事情。
例如,我正在使用此代码将表单,子表单和字段名称传递给新表单:
DoCmd.OpenForm stDocName, , , , , , stForm & "|" & stField & "|" & stSubForm
当我打开该表单时,我正在使用此代码解析这些值:
strForm = Left(Me.OpenArgs, InStr(Me.OpenArgs, "|") - 1)
Brk1 = Mid(Me.OpenArgs, InStr(Me.OpenArgs, "|") + 1)
strField = Left(Brk1, InStr(Brk1, "|") - 1)
strSubForm = Mid(Brk1, InStr(Brk1, "|") + 1)