![不同行放入不同列](https://linux22.com/image/1419832/%E4%B8%8D%E5%90%8C%E8%A1%8C%E6%94%BE%E5%85%A5%E4%B8%8D%E5%90%8C%E5%88%97.png)
我有一张 Excel 表,其中包含数百条如下数据:
Name 1 Name 2 Name 3 Name 4
A Aa Aaa Aaa
Name 5 Name 6 Name 7 Name 8
B Bb Bbb Bbbb
我需要将它们一次性全部放如下:
Name 1 A
Name 2 Aa
Name 3 Aaa
Name 4 Aaa
Name 5 B
Name 6 Bb
Name 7 Bbb
Name 8 Bbbb
我该怎么做?有宏方法吗?
答案1
我会使用 Power Query 插件来解决这个问题。这需要几个步骤,但不需要宏代码或更改输入数据结构。
我已经构建了一个原型,您可以查看或下载它 - 我的 One Drive 中的“Power Query 演示 - 将行对反转为两列.xlsx”:
https://onedrive.live.com/redir?resid=4FA287BBC10EC562%21398
基本上,我的技术是首先构建一个中间查询,该查询过滤到每个奇数行,并添加一个“索引行对”列来跟踪行对。然后我创建了该查询的副本,该查询过滤到偶数行。然后我使用合并(在“索引行对”列上)连接到第一个查询,并将奇数行和偶数行列全部放在一行中。然后我添加了一对 Unpivots 来将 4 个奇数行列和 4 个偶数行列转换为 8 行。然后我添加了一个计算来过滤到所需的行集。