2015-02-10 115 views
0

寻找一个解决以下:MS Access 2010中的汇总数据

原始表:

 ID:  Cat: 
     1   Yes 
     1   No 
     2   Yes 
     2   No 
     3   No 

结果:

ID:  Cat: 
    1  Yes-No 
    2  Yes-No 
    3  No 

Anythoughts:我用更新查询器采取 步骤:创建另一张表

“唯一表”

ID  Yes  No  "Both (Concatenate Yes and No Columns)" 

加入该表格... 我确定这是一种更有效的方式来做到这一点,而不使用VBA。帮帮我?

回答

1

不幸的是,JET SQL并没有提供简单的方法来完成此操作。您需要使用VBA。您可以使用Allen Browne ConcatRelated()提供的功能。该函数将返回相应的连接值。

只需将Allen Brown站点中的代码复制到标准模块中,并将其保存为名为mod_Concat的名称。编译代码,以便编译器理解函数。

然后创建一个类似SQL查询。

SELECT 
    ID, 
    ConcatRelated("Cat", "rawTable", "ID = " & [ID]) As NewConcat 
FROM 
    rawTable; 
+0

感谢分享这看起来真棒,但我当然不能得到这个工作... – 2015-02-10 17:01:36

+0

@MrJohn,为什么会这样? – PaulFrancis 2015-02-10 17:04:12

+0

可能有多种原因,但我会说这很可能是用户错误。标准表达式中出现错误3464:数据类型不匹配。 – 2015-02-10 17:26:21