0

我有一个标签式导航。我有一个绑定表单,用户双击长列表中的单个用户。我想转到一个未绑定的表单,并预加载包含该用户详细信息的表单(编辑用户)。我专门使用未绑定的表单,因为我想显示一个保存/取消按钮。我找不到任何方法将用户的 id 传递给 load_form 调用。我错过了什么吗?我必须使用某种全局变量(这对我来说似乎很糟糕)吗?

4

1 回答 1

2

打开表单时可以使用 OpenArgs:-

DoCmd.OpenForm "MyForm", acNormal,,,,,Args

无论 Args 是什么,都可以在“MyForm”中作为 Me.OpenArgs 引用

例如,如果你传递一个数字 PK,那么你可以使用类似的东西:

dim db as dao.database
set db = currentdb
dim rs as dao.recordset
set rs = db.openrecordset ("select * from MyTable where PK=" & me.openargs", dbopendynaset, dbfailonerror)
if rs.eof then
'didn't find record with PK...
else
'then populate the unbound controls on your form with the fields from the recordset
...

请注意,您不必为了提供保存/取消而拥有未绑定的表单。如果您为表单的更新前事件编写事件处理程序,您可以随意取消更改或提交更改。

于 2012-12-17T20:13:32.953 回答