Ms access 在MS Access中将列连接到一行

Ms access 在MS Access中将列连接到一行,ms-access,Ms Access,我在Access 2010数据库的查询中得到以下结果: Name Column1 Column2 Column3 ----------------------------------------------------------- Example1 52 447 52447 Example1 52 455 52455 Example1

我在Access 2010数据库的查询中得到以下结果:

Name          Column1       Column2         Column3
-----------------------------------------------------------
Example1          52          447            52447
Example1          52          455            52455
Example1          52          454            52454
Example1          52          453            52453
Example2          100         000            100000
Example2          101         001            999999
我需要转换这些数据,将每列连接到一行,类似于:

Name        Column1       Column2                Column3
------------------------------------------------------------------
Example1      52      447,455,454,453    52447,52455,52454,52453
Example2    100,101       000,001            100000, 999999
由于我对Access还是新手,我为此搜索了一个VBA函数,但我找到的每个函数都忽略了一个对我来说很重要的点:

其中一些行的列超过255个字符(字符总数),因此我将无法使用找到的函数

这是一个处理类似案例的主题,但它仍然不符合我的解决方案:

这是艾伦·布朗的作品:

有人能帮忙吗


关于,

我认为您找到的第二种解决方案是有效的: 您需要更改条件,因为您的表有一个双键(名称,column1)

您的选择应该如下所示:

SELECT Name, Column1, 
           ConcatRelated("Column2", "MyTable", "Name = '" & [Name] & "' And Column1 = " & [Column1]) as C2, 
           ConcatRelated("Column3", "MyTable", "Name = '" & [Name] & "' And Column1 = " & [Column1]) as C3
    FROM MyTable

请注意,对于大数据,此解决方案的速度可能非常慢

它是一列(不是一个collum)哦,我为错误感到抱歉。它不会。。。它将把我的数据连接到一个文本,而不是一个备忘录。select语句将在内存中运行,所以列的数据类型无关紧要。如果需要将结果保存到表中,字段大小将与连接值的大小相关。如果你有很多值,你不能将它们保存在文本字段中。我仍然不知道怎么做。我发现我的语法错误。。。我是在一个select查询中这样做的,但是挖掘这些数据的最佳方法是什么呢?我做到了!我刚刚错过了一些数据。感谢您的回复,我发现此代码非常适合:)