如何用Power Query将多列横向表格转为纵向表格?
使用Power Query实现双列表格格式转换
完全可以用Power Query实现你需要的双列表格转换,以下是针对不同场景的实操步骤:
场景1:纵向双列转横向多列
如果你的源数据是成对的纵向双列(比如每行是一个类别名称+对应数值),要转成横向的多列结构:
- 导入数据到Power Query编辑器(「数据」→「从表格/范围」)。
- 确保有一个用于分组的标识列(如果没有,可添加自定义列填充固定值作为分组依据)。
- 选中分组列,点击「转换」选项卡→「透视列」。
- 在弹出窗口中,选择值对应的列,聚合方式选不要聚合,确认后即可生成横向结构。
场景2:横向双列组转纵向结构
如果源数据是横向的多组双列(比如「类别1名称、类别1值、类别2名称、类别2值」),要转成纵向的成对结构:
- 导入数据到Power Query编辑器。
- 选中所有需要转换的双列组,点击「转换」选项卡→「逆透视列」→「逆透视其他列」,将横向列转成「属性-值」的纵向对。
- 若属性列包含分组标识(比如「类别1名称」里的「类别1」),可选中属性列,点击「转换」→「拆分列」,按固定分隔符或位置拆分出分组标识。
- 按分组标识列对数据进行分组,再将值列转成对应的成对列,最后清理多余辅助列即可。
关键提示
- 不需要局限于单列表格的转置,Power Query的「逆透视列」和「透视列」组合操作,完全支持多列/多组列的结构转换。
- 若双列是严格一一对应的成对数据,可先添加自定义列将两列合并(比如用公式
[列A] & "|" & [列B]),逆透视后再拆分回两列,操作更高效。
内容的提问来源于stack exchange,提问作者Mohamed Maghrabi
相关产品推荐
相关产品推荐

