转到在数据表中打开的Access 2016表单中的记录

时间:2019-03-25 00:11:48

标签: sql forms ms-access

此程序旨在允许食品储藏室参加会议。为此,

  1. 管理员通过从名为 Dat_Household_Member 的表中选择名称,并在名为IsHeadOfHouseHold(正确或错误)的字段上键入,来输入出席信息。

  2. 当管理员选中一个名为“ Attended ”的框时,记录将写入临时表,该表在写入最终报告后将被清除。

  3. 管理员无法一次坐完会议。所以,我需要带她回到她最后的位置。

  4. 我有一个临时表,在将每条记录追加到临时表之后,将 Household_ID 放入其中。这样,我便知道哪条记录最后被编辑了。

我想打开一个名为 SigninSheet-Simplified 的表单,并在表单处于数据表模式时转到该记录:

  • OpenFormwhere子句不起作用。我有一张唱片。我想打开表格并转到该行。应该很简单。
  • FindRecord将不接受变量。
  • GoToRecord也不是。
  • RunQuery在表单外运行查询。
  • DoCmd.RunSql即使通过SQL正常运行的查询也返回错误。

这是SQL-

SELECT dat_household_member.household_id, dat_household_member.[full-name] 
FROM dat_household 
INNER JOIN dat_household_member 
     ON dat_household.id = dat_household_member.household_id 
WHERE (((dat_household_member.household_id)=[forms]![MainMenu]![InProgress]) 
   AND ((dat_household_member.is_head_of_household)=True));

我愿意接受尽可能简单地完成此操作的任何想法。

1 个答案:

答案 0 :(得分:0)

IIUC-打开数据表表单后,只需将SearchForRecord where 条件一起使用:

DoCmd.OpenForm "SigninSheet-Simplified"

DoCmd.SearchForRecord acDataForm, "SigninSheet-Simplified", acFirst, _ 
                      "household_id = " & [Forms]![MainMenu]![InProgress]