如何将Schematiq表中多行的文本连接成单个值

时间:2016-06-03 12:00:52

标签: excel excel-formula schematiq

在Microsoft Excel中,我有一个Schematiq表,其中包含多行值:

enter image description here

我想将所有行值连接成一个值,并将其存储在由文本" -colour - "

分隔的单元格中。

因此,从上面的示例中,所需的输出将是:红色 - 黄色 - 粉红色 - 绿色 - 橙色 - 颜色 - 紫色 - 蓝色

这是否可以使用自定义聚合函数?

1 个答案:

答案 0 :(得分:0)

是的,这可以使用自定义聚合功能。也许你已经尝试过这样的事情:

=tbl.Group(F7, , "A")

您会发现自己获得了#VALUE!,因为Schematiq会尝试在A列中添加值,但不能,因为它们不是数字。

当您向tbl.Group提供自定义函数时,它会在列中的前两个值上使用它,然后使用该结果和下一个值,依此类推。因此,要复制默认行为,您可以使用以下内容:

(x, y) => x + y

根据您的问题,您希望使用如下函数组合两个文本值:

(x, y) => x & '-colour-' & y

..这看起来像是对tbl.Group的调用:

=tbl.Group(F7, , "A", "(x, y) => x & '-colour-' & y")

然后,您可以在调用tbl.GetValue时将其包装起来,将答案直接放入单元格中。

或者,你可以这样做,它从表列中获取所有值,并使用txt.Join来组合它们:

=txt.Join(tbl.GetValues(F7), "-colour-")

在这种特殊情况下,这可能更简单。

(顺便说一下,我是Schematiq团队的一员)