使用 PowerQuery 在 Excel 中堆叠成对的列

Stacking pairs of columns in Excel with PowerQuery

我在 power 查询中生成了一个 table 当前格式如下

A Key1 Value1 Key2 Value2
A1 B1 C1 D1 E1

我要

A Key Value
A1 B1 C1
A1 D1 E1

如何在幂查询中实现?

  1. 参考原来的 table,删除第 4 列和第 5 列并将其余列重命名为 A、Key 和 Value。
  2. 再次参考原来的table,删除第 2 列和第 3 列,并将其余列重命名为 A、Key 和 Value。
  3. 附加上述 2 个查询

来自 Peter 作品的答案,或使其更通用:

let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
base=1,   // # leading columns that will repeat
group=2,  // followed by groups of 2 columns
Combo = List.Transform(List.Split(List.Skip(Table.ColumnNames(Source),base),group), each List.FirstN(Table.ColumnNames(Source),base) & _),
#"Added Custom" =List.Accumulate(
        Combo, 
        #table({"Column1"}, {}),
        (state,current)=> state & Table.Skip(Table.DemoteHeaders(Table.SelectColumns(Source, current)),1)
)
in #"Added Custom"