小勤:像下面这个需求,要将左边的数据源按不同字母涉及的数字进行区间组合,怎么弄比较好?
大海:这个问题如果能确保同一个字母的相关数字是连续的话,解决起来还是比较容易的,但如果同一个字母下的相关数字有可能中断的话,那解决起来就比较麻烦一些。
小勤:先说一下最简单的,同一字母下的数字都是连续的怎么办?
大海:首先,先把字母和数字分开:
拆分数字部分记得转换为数值类型:
然后,我们就可以进行分组了:
分组后,直接修改生成的步骤代码中的参数,得到区间信息:
小勤:这个看起来好长啊。
大海:看起来虽然长,但其实很简单,就是将分组后的内容取最小值或最大值,然后转换为文本格式,然后用Text.PadStart函数做成齐头的格式(不足用0补),最后将最小值和最大值用“-”链接在一起。
小勤:嗯。Power Query里的函数通常用起来比较直接,但就是公式看起来好长。
大海:其实公式不怕长,怕是需要很多烧脑的技巧。
小勤:的确是。到了这里其实就很简单了,后面做一下合并列即可:
大海:对的。
小勤:那如果相同的字母下有间断的话,怎么办呢?
大海:这个就会比较复杂一些了,后面我们再深入讲。