39、Power Query-Text.Combine函数应用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhongguomao/article/details/54573785

本节开始我们学习函数的应用:Text.Combine函数应用

Returns a text value that is the result of joining all text values with each value separated by a separator.

用法:       Text.Combine(text as list,  separator as nullable text) as text  
Argument Description
text The list of text to combine.
separator The separator to use when combining. This will only appear between the specified text values, not at the beginning or the end.
Example:    Text.Combine({"a", "b", "c"}, ",") equals "a,b,c"  

从上面的解释,不难看出Text.Combine有两个参数组成,一个是文本的集合,另一个是分隔符。

参与组合的必须是文本类型,而生成的结果也必然是文本类型(as text)。

我们看下图,参与合并的集合是1~9,数字类型,在转换时报错。


我们作如下修改即可。


下面我们通过一个之前实现过得案例来讲解Text.Combine的妙用。


上图是一些业务员在每个月的业绩,下面要在一行里面汇总每个人在所有月的总业绩。

效果如下:


之前我们实现过类似的需求,比较麻烦,下面我们就用Text.Combine()来实现。

同样,我们根据“姓名”对“业绩”做“分组”。


得到如下的结果:


这个时候我们去看它的编辑器里面的公式。

Table.Group(重命名的列, {"姓名"}, {{"总业绩", each List.Sum([业绩]), type number}})

这个公式的意思是:根据“姓名”,对“业绩”求和,赋值给新的列名“总业绩”,结果类型为数字型。

然后我们的需求不正是对月份进行汇总么,而显示的格式是按照“/”分割。

我们依葫芦画瓢,复制一份“{"总业绩", each List.Sum([业绩]), type number}”放在它后面,用“,”分隔。

 Table.Group(重命名的列, {"姓名"}, {{"总业绩", each List.Sum([业绩]), type number},{"月份", each Text.Combine([月份],"/")}} )

这里要格外细心,注意“{}”符号的范围。


效果达成:


是不是比之前的方法效率提高了N倍。

猜你喜欢

转载自blog.csdn.net/zhongguomao/article/details/54573785
39