Power Query文本拼接方法与Excel新函数Textjoin比试一下

Excel新函数Textjoin函数是字符拼接的利器,与之前的“&”与CONCATENATE函数相比,简直是太好用了,比之新函数CONCAT函数也是功能更加强大些。

关于Textjoin函数和Concat函数,在我Excel函数专栏中有详细介绍。

今天我们使用Power Query来实现文本拼接,我们来看例子:

Power Query文本拼接方法与Excel新函数Textjoin比试一下

我们要像做数据透视表一样,把文本透视过来,拼接在一起。

Excel中,我们有了新函数Textjoin,这个工作就变得非常简单了,我们只需要把条件列清楚就行,如果班级等于初一,就引用班级的内容,否者为空。

=TEXTJOIN(",",TRUE,IF($A$2:$A$19=D2,$B$2:$B$19,""))

这是一个单个单元格的数组公式,需要CTRL+SHIFT+ENTER三件结束。

那么在Power Query中我们有什么办法来进行这样的拼接呢?

有两个思路:

Text.Combine函数

Text.Combine函数是使用指定的分隔符,来拼接列表内的文本,需要两个参数:

首先要做分组操作,使用年级分组

Power Query文本拼接方法与Excel新函数Textjoin比试一下

然后修改上面标红的位置的内容:

Power Query文本拼接方法与Excel新函数Textjoin比试一下

这样就可以了,代码如下:

let
 源 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],
 更改的类型 = Table.TransformColumnTypes(源,{{"年级", type text}, {"班级", type text}}),
 分组的行 = Table.Group(更改的类型, {"年级"}, {{"计数", each Text.Combine([班级],",")}})
in
 分组的行

透视

这个也要用到,我们讲过的Power Query组内编号,然后使用组内编号透视列,然后再合并列。

第一步:组内编号

先分组>添加组内编号>展开表

Power Query文本拼接方法与Excel新函数Textjoin比试一下

第二步:透视列

删除多余的全索引列,使用组内编号透视列

Power Query文本拼接方法与Excel新函数Textjoin比试一下

第三步:合并列

使用逗号做分隔符合并选中的列

Power Query文本拼接方法与Excel新函数Textjoin比试一下

代码:

let
 源 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],
 更改的类型 = Table.TransformColumnTypes(源,{{"年级", type text}, {"班级", type text}}),
 已添加索引 = Table.AddIndexColumn(更改的类型, "索引", 1, 1),
 分组的行 = Table.Group(已添加索引, {"年级"}, {{"计数", each Table.AddIndexColumn(_,"A",1,1)}}),
 #"展开的“计数”" = Table.ExpandTableColumn(分组的行, "计数", {"年级", "班级", "索引", "A"}, {"年级.1", "班级", "索引", "A"}),
 删除的列 = Table.RemoveColumns(#"展开的“计数”",{"索引"}),
 已透视列 = Table.Pivot(Table.TransformColumnTypes(删除的列, {{"A", type text}}, "zh-CN"), List.Distinct(Table.TransformColumnTypes(删除的列, {{"A", type text}}, "zh-CN")[A]), "A", "班级"),
 合并的列 = Table.CombineColumns(已透视列,{"1", "2", "3", "4", "5", "6"},Combiner.CombineTextByDelimiter(",", QuoteStyle.None),"已合并")
in
 合并的列

两种方法各有千秋,而且可以互相转换,第一种方法,我们也可以通过符号拆分列,变成透视列的效果,后一种方法,透视列后再合并。很多时候,我们会需要在这两种状态之间变来变去,就像和面一样,把数据揉来揉去,变成我们想要的样子。

总的说来,Textjoin函数与Text.Combine函数最为接近,

展开阅读全文

页面更新:2024-05-08

标签:函数   文本   方法   透视   班级   索引   编号   条件   参数   年级   类型   代码   内容   数据   列表   科技

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top