将行集转置为列

将行集转置为列

尝试通过寻找将数据集转置为列的方法来避免自己进行数小时的手动工作。

目前我的数据已经清理完毕,并分成两列:A 列显示列名,B 列显示实际值。因此,您有一组值,然后是两行空白行,然后是下一组值。

Column A | Value A1
Column B | Value B1
Column C | Value C1
Column D | Value D1
Column E | Value E1


Column A | Value A2
Column B | Value B2
Column D | Value D2
Column E | Value E2
Column F | Value F1

我的问题是,这些集合并不都包含相同数量的行,并且左列中的值并不总是匹配(如上所述,某些集合会有 C 列条目,其他集合会有 F 列条目,而其他集合则没有)。

有一点可能会有帮助,那就是第一个值由相同的列名(即列 A)标识。

如何让 Excel 将集合转置为不同的行?我希望最终得到以下结果:

Column A | Column B | Column C | Column D | Column E | Column F
Value A1 | Value B1 | Value C1 | Value D1 | Value E1
Value A2 | Value B2 |          | Value D2 | Value E2 | Value F1

我愿意使用 VBA,但不太熟悉,因此 GUI 选项是首选,但不是必需的。如果您提供 VBA 解决方案,我将非常感激您能提供尽可能多的详细信息。

谢谢:)问候,凯特。

答案1

GUI 解决方案的可行性取决于您讨论的数据量。如果数据量合理,您可以在 GUI 中手动执行。第 1 步是复制每个值,使其看起来像:

A 列 | 值 A1 | 值 A2
B 列 | 值 B1 | 值 B2
C 列 | 值 C1
D 列 | 值 D1 | 值 D2
E 列 | 值 E1
F 列 | 值 F1

然后,您可以复制整个区域,然后通过选择性粘贴 -> 转置来交换行和列。您可以先使用 Excel 排序功能根据第一列进行排序,这样所有 A 列条目将首先出现,然后是所有 B 列条目,等等,从而加快数据的复制速度。正如我所说,这样做的可行性取决于您谈论的数据量。

如果您想进一步实现自动化,我怀疑您将需要使用 VBA,至少我现在想不出更图形化的方式来做到这一点。

相关内容