Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 访问列表框:何处条件问题_Sql_Ms Access_Macros - Fatal编程技术网

Sql 访问列表框:何处条件问题

Sql 访问列表框:何处条件问题,sql,ms-access,macros,Sql,Ms Access,Macros,我在使用列表框时遇到了一个问题。列表本身指的是一个包含员工姓名的表(名为[Techs]的字段)。此表用于填充包含分配给这些员工的任务的“主”表(字段:[负责]) 这里的目的是将员工添加到表中,然后列表和所有关联数据都将使用该名称进行更新,但任务可以根据名称本身进行查询,而无需用户每次都设计新的查询。我用每个人的名字和他们分配的任务设置了一个查询。然后我做了一个列表框。我希望它在名称与用户单击的名称匹配的位置运行查询 这是我在宏中的where条件: [Techs]=[Forms]![FindbyN

我在使用列表框时遇到了一个问题。列表本身指的是一个包含员工姓名的表(名为[Techs]的字段)。此表用于填充包含分配给这些员工的任务的“主”表(字段:[负责])

这里的目的是将员工添加到表中,然后列表和所有关联数据都将使用该名称进行更新,但任务可以根据名称本身进行查询,而无需用户每次都设计新的查询。我用每个人的名字和他们分配的任务设置了一个查询。然后我做了一个列表框。我希望它在名称与用户单击的名称匹配的位置运行查询

这是我在宏中的where条件:

[Techs]=[Forms]![FindbyName]![Responsible]
我得到的对话框在顶部显示了WHERE的第一个子句,在底部显示了一个搜索框。

嵌入宏的
OpenForm
操作中的WHERE条件引用了一个字段Techs,该字段在目标表单的记录源中不存在。因此Access无法识别该上下文中的字段名,并假定它必须是一个参数

更改
OpenForm
Where条件以使用记录源中确实存在的字段:


对话框标题为:“输入参数值”“Techs”是参数的名称。这是我设置的宏引用的查询:选择Master.Responsible、Master.[任务名称]、Master.Description、Master.Location、Master.Due FROM Master;这个查询甚至没有提到技术,所以我不明白Access为什么要为它求一个值。Master是一个表还是一个查询的名称?我认为Techs可能引用宏本身,或者Techs可能是Techs表通知Master表谁负责某项任务的结果。Master是否包含查找字段?
[Responsible]=[Forms]![Find PM]![List38]