0

我对 MS Access 非常陌生,我正在使用 ms access 自动化报告,用户正在导入原始 excel 文件,每个文件都用于将数据获取到特定字段。我的问题是材料中有多个不同的部门(即 SG、BR、US、EU、PH)。有多个相同料号但不同部门的情况。我需要获取属于 SG 的部门的材料值。用户手动识别 SG 的操作是将分部与材料连接起来,因为在主查询或输出文件中的唯一查找是材料编号,不包括分部字段。例如

Material     Division        Value   Concat
89098        BR092           78      BR09289098 
89098        SG879           20      SG87989098  
90921        EU939           80      EU93090921

由于我无法将行数设为输出的基数,我在设计视图中所做的是将总数设置为 First 而不是 Group By,所以基本上先出现的数字就是查询的内容得到..如果它们属于相同的材料,我需要具有SG值的材料编号,至于其他部门他们没有问题,他们必须保留他们的价值。我尝试过使用 Division: First((IIf(Left([Concat],2)='SG','1',IIf(Left([Concat],2)='BR','2','3')))) 然后将其设置为升序但不起作用。该材料仍然获得BR师的价值。我需要它在设计视图代码或 sql 视图代码中。如果有人能给我答案,这将是一个很大的帮助,或者更多的帮助你节省我的 a$$。谢谢!

4

2 回答 2

0

你能澄清一下你的问题到底是什么吗?

你为什么要使用“分组”呢?

为什么您不简单地将部门包括在您的输出报告中?

于 2016-10-06T11:41:20.447 回答
0

已解决:从发布的问题中,我创建了一系列查询。从我创建的原始源表中第一个:具有唯一计数的材料(使用标准 1 完成此操作)第二个:没有 SG 部门的材料和第三个:具有 SG 部门的材料,

在没有 SG 的材料的查询下拥有此代码

`SCOPE: IIf([Query_SC_and_Purchase_Price_Scope_SG].[SCOPE] Is Null,[Query_SC_and_Purchase_Price_Scope_NO_SG].[SCOPE],[Query_SC_and_Purchase_Price_Scope_SG].[SCOPE])`

这适用于带有 SG 代码查询的材料

   SCOP: IIf([Query_SC_and_Purchase_Price_Scope_SG].[SCOPE] Is Null,[Query_SC_and_Purchase_Price_Scope_NO_SG].[SCOPE],[Query_SC_and_Purchase_Price_Scope_SG].[SCOPE])

收集所有这些数据并检查我创建了一个 UNION ALL 查询

 `SELECT Query_SC_and_Purchase_Price_Scope_Unique.* 
    FROM Query_SC_and_Purchase_Price_Scope_Unique
    UNION ALL
    SELECT Query_SC_and_Purchase_Price_Scope_SGNOSG_SG.* 
    FROM Query_SC_and_Purchase_Price_Scope_SGNOSG_SG
    UNION ALL SELECT Query_SC_and_Purchase_Price_Scope_SGNOSG_NOSG.*
    FROM Query_SC_and_Purchase_Price_Scope_SGNOSG_NOSG;
    `

我提出了正确的价值观。

于 2016-10-20T03:45:13.330 回答