龙空技术网

Power Query 交错合并表格的方法

EXCEL数据处理与分析 167

前言:

现在同学们对“union函数”大体比较珍视,姐妹们都想要剖析一些“union函数”的相关文章。那么小编也在网上网罗了一些关于“union函数””的相关内容,希望朋友们能喜欢,你们快快来学习一下吧!

两张表格合并成一张表格,需要交错排列,表1取一行,表2取一行,这样排列在一起:

前提是两张表的行数相同,内容排列顺序相同:

我们来看两张表:

表1:12列10行表2:11列10行

行数相同列数不同,我们在数据处理的过程中需要给表2补一列,保证两表行列相同。

Table.AddColumn(表2,"A",each null)

给表2添加了一个A列,内容是null的空列

{1..List.Count(Table.ToRows(表1))}

这个列表是两个表的行标列表,{1..10}

List.Transform(

{1..List.Count(Table.ToRows(表1))},(x)=>{Table.ToRows(表1){x-1},Table.ToRows(Table.AddColumn(表2,"A",each null)){x-1}})

x-1:就是实际行标,这个循环结束之后,我们得到一个列表,10行的列表,每行的内容是两个列表,分别是表1的一行与表2的一行。

我们最终要求的结果是一个20行的列表,我们需要用List.Union函数展开列表,最后用Table.FromRows函数还原表格:

Table.FromRows(

List.Union(List.Transform({1..List.Count(Table.ToRows(表1))},(x)=>{Table.ToRows(表1){x-1},Table.ToRows(Table.AddColumn(表2,"A",each null)){x-1}})))

标签: #union函数