Sql MS Access按表单问题查询

Sql MS Access按表单问题查询,sql,forms,ms-access,Sql,Forms,Ms Access,我有一张fCen1-20表格,里面有两个组合框。第一个组合框称为Lookup Value,下拉列表包含字段Lookup_值,该值用作数据库中每个表的主键。第二个组合框称为Category,下拉列表包含字段Category、Code和Table 我想让用户选择查找值和类别,并让这些选择通知一个查询,该查询返回所选查找值的所选类别的值。复杂的因素是,每个查找值都与1500多个唯一的信息类别相关联,每个类别都分配了一个唯一的代码——该代码用作字段名 为供参考,我已将我的代码以及我的基本原理粘贴在下面:

我有一张fCen1-20表格,里面有两个组合框。第一个组合框称为Lookup Value,下拉列表包含字段Lookup_值,该值用作数据库中每个表的主键。第二个组合框称为Category,下拉列表包含字段Category、Code和Table

我想让用户选择查找值和类别,并让这些选择通知一个查询,该查询返回所选查找值的所选类别的值。复杂的因素是,每个查找值都与1500多个唯一的信息类别相关联,每个类别都分配了一个唯一的代码——该代码用作字段名

为供参考,我已将我的代码以及我的基本原理粘贴在下面:

SELECT [Forms]![fCen1-20]![Category 1].Code 
' Rationale: Get the value for the Code associated with a given category

FROM [Forms]![fCen1-20]![Category 1].Table 
' Rationale: Reference the Table where the selected Category/Code is housed

ON [Forms]![fCen1-20]![Category 1].Table.Lookup_Value = _ 
        [Forms]![fCen1-20].[Lookup Value]; 
' Rationale: Select only those records in the table 
' for which the Lookup_Value field matches the Lookup Value  
' selected in the form

当我运行这段代码时,FROM子句error中给出了一个语法错误。有没有关于如何使这项工作的建议?请让我知道,如果你想要任何额外的细节或澄清。谢谢

如果在查询中使用此选项,则假设表单fCen1-20在表单视图中打开,则可能会起作用

选择[表格]![fCen1-20]![第1类] 返回的值将来自当前选定组合框行的绑定列。[Category 1]包括3列这一事实并不重要。db引擎只看到绑定的列。在组合属性表的数据选项卡上检查组合的绑定列属性。绑定值是查询中唯一可用的组合值

无法将列名附加到组合名称以从这些列检索值,因此这两个操作都将失败:

[表格]![fCen1-20]![类别1]。代码 [表格]![fCen1-20]![第1类].表 这就是我为什么认为你的方法行不通的原因。然而,我不知道该提出什么建议。通常,如果使用表的主键作为组合的绑定值,则可以将该绑定值与查询中的DLookup表达式一起使用。例如,假设所有值都是数字

选择fld1、fld2等 从你的桌子上 其中某个字段=DLookup 查找U字段, 另一张桌子, pkey_字段=&[Forms]![fCen1-20]![第1类] ;
不幸的是,我不知道该建议是否对您的情况有用,因为我不清楚您试图实现的目标。

如果您在查询中使用该建议,则假设表单fCen1-20在表单视图中打开,它可能会起作用

选择[表格]![fCen1-20]![第1类] 返回的值将来自当前选定组合框行的绑定列。[Category 1]包括3列这一事实并不重要。db引擎只看到绑定的列。在组合属性表的数据选项卡上检查组合的绑定列属性。绑定值是查询中唯一可用的组合值

无法将列名附加到组合名称以从这些列检索值,因此这两个操作都将失败:

[表格]![fCen1-20]![类别1]。代码 [表格]![fCen1-20]![第1类].表 这就是我为什么认为你的方法行不通的原因。然而,我不知道该提出什么建议。通常,如果使用表的主键作为组合的绑定值,则可以将该绑定值与查询中的DLookup表达式一起使用。例如,假设所有值都是数字

选择fld1、fld2等 从你的桌子上 其中某个字段=DLookup 查找U字段, 另一张桌子, pkey_字段=&[Forms]![fCen1-20]![第1类] ; 不幸的是,我不知道这个建议对你的情况是否有用,因为我不清楚你想要实现什么