我有一个表单,它将参数提交给查询,然后以另一种形式打开结果记录。问题是,每当有多个记录时,它会自动将第一个记录放入from中而没有任何选项来选择我想要的记录。我在第一个表单上的搜索按钮上设置了一个宏,它将参数提交给查询然后以第二种形式显示,我试图在两者之间设置另一个宏,但我不知道如果可以设置表达式创建者来检查查询产生的行数。是否可以修改查询以创建提示以选择我想要的记录?或者我应该改变其他什么?
这是查询:(通过访问自动创建)
SELECT CHILD.CHILD_L_NAME, CHILD.CHILD_F_NAME, CHILD.DOB, CHILD.GENDER, CHILD.DAYS_IN_CARE,
CHILD.HOURS_PER_DAY, CHILD.ENROLLMENT_DATE, CHILD.CHILD_ADDRESS, CHILD.CHILD_CITY,
CHILD.CHILD_ZIP, CHILD.CHILD_STATE, CHILD.CLASSROOM, CHILD.SNACK, CHILD.LAST_UPDATED, CHILD.CIN
FROM CHILD
WHERE (((CHILD.CHILD_L_NAME)=[Forms]![Search]![L_NAME]) AND
((CHILD.CHILD_F_NAME)=[Forms]![Search]![F_NAME])) OR
(((CHILD.CHILD_L_NAME)=[Forms]![Search]![L_NAME]) AND
((CHILD.DOB)=[Forms]![Search]![DOB])) OR
(((CHILD.DOB)=[Forms]![Search]![DOB])) OR
(((CHILD.CHILD_L_NAME)=[Forms]![Search]![L_NAME]));
答案 0 :(得分:0)
如果我很清楚你的问题,你使用VBA就很容易了。
您可以根据您使用按钮创建的查询创建简化查询。这个新查询应该包括所有字段,只允许您区分beetwen记录以显示在第二种形式。
例如,它可以包括LastName,FirstName和教室,以便在具有相同全名的孩子之间进行选择。
您可以计算此第二个查询的记录数,如果大于1,则表示您要显示多个子项。
因此,您可以使用此第二个查询来填充组合框或列表框,以选择您真正想要显示的记录。
当记录数为1时,您可以使用recordcount上的if语句跳过列表框填充。
下一步是打开包含所选(或唯一)记录的表单。
再见