首页 > 解决方案 > MSAccess 将下拉组合框绑定到子窗体

问题描述

我有一个多列下拉组合框(cmb_users),它在表单(frm_myusers)上列出用户名,数据直接来自名为“dbo.my_users”的表,主键“pc_user_id”,它是第一列下拉。

然后,我将一个多表单子表单嵌入到父表单 (frm_myusers) 中,其中包含每个用户的一个或多个角色。数据源直接来自名为“dbo.my_users_roles”的表,其主键是 pc_user_id。dbo.my_users 和 dbo.my_users_roles 之间的关系是一对多。

在此处输入图像描述

我遇到的挑战是当我尝试将组合框绑定到子表单时,我得到“无法绑定到未绑定的表单错误”

在此处输入图像描述

因此,我尝试将组合框值传递给幕后的查询(qry_my_users_roles)以驱动子表单。查询的条件在 pc_user_id 上为=[Forms]![frm_users]!cmb_users.Column(0),我收到以下错误。不知道从这里去哪里。

在此处输入图像描述

最终有没有一种方法可以简单地将下拉绑定到子表单,而无需跳过将变量传递给查询和刷新的循环?将字段映射到查询条件可能会非常麻烦,拼写或语法也不是绝对完美的:(

提前致谢。

标签: formsms-accessdata-bindingsubqueryms-access-2010

解决方案


由于组合框未绑定,因此将其添加到主字段:

sci_cnt_id;NameOfCombobox

并调整子字段:

sci_cnt_id;sci_own_id

如果您希望显示所有记录,则必须维护字段计数,因此请使用:

sci_cnt_id;sci_cnt_id

推荐阅读