![我需要在 Excel 中按如下方式重新排列行,以排列数据单元格](https://linux22.com/image/1342810/%E6%88%91%E9%9C%80%E8%A6%81%E5%9C%A8%20Excel%20%E4%B8%AD%E6%8C%89%E5%A6%82%E4%B8%8B%E6%96%B9%E5%BC%8F%E9%87%8D%E6%96%B0%E6%8E%92%E5%88%97%E8%A1%8C%EF%BC%8C%E4%BB%A5%E6%8E%92%E5%88%97%E6%95%B0%E6%8D%AE%E5%8D%95%E5%85%83%E6%A0%BC.png)
1 2 3 4 5 6 7 8 9 10
(这是我的初始数据)
我的输出
1 2 3 4 5
6 7 8 9 10
有什么办法可以做到这一点吗?我有大约 400 行类似数据
非常感谢
答案1
如果这是一次性修改,您可以按如下方式操作。如果是重复性任务,您肯定需要宏...
假设您的数据在第 1 行到第 x 行、第 AJ 列,而您希望结果在第 1 行到第 2x 行、第 AE 列(列数并不重要,因为方法不依赖于此,但它更容易解释......)但我假设 400 行是中间的一个“实心”表(没有空格或其他对象)。
- 在 A 之前插入一列,这样数据现在在 BK 中;
- 用连续的数字(1-400)填充 A 列(使用 Excel 自动填充功能进行拖动);
- 将整张表复制到第二张临时表;
- 在原始表中:删除列 GK
- 原文中:在 A 和 B 之间插入列,并在所有行上填充 1;
- 复制中:删除 BF 列
- 在副本中:在 A 和 B 之间插入列,并在所有行上填充 2;
- 复制临时第二张表上的所有单元格并粘贴到原始表的其他行下方;
- 使用 A 作为主要列、B 作为次要列进行排序;
- 除去 A 列和 B 列;
就是这样,这么说起来很长,但做起来却不行。
如果您的列数不同(即使拆分不在中间),您也可以使用相同的方法在两张表之间的右列进行拆分。
答案2
1)源数据
A B
1 99 100
2 98 101
3 97 102
4 96 103
2)使用复制/粘贴获得以下结果
A
1 99
2 98
3 97
4 96
5 100
6 101
7 102
8 103
3)添加以下编号
A B C
1 99 1 1
2 98 2 1
3 97 3 1
4 96 4 1
5 100 1 2
6 101 2 2
7 102 3 2
8 103 4 2
4)按B和C对数据进行排序,这将产生:
A B C
1 99 1 1
2 100 1 2
3 98 2 1
4 101 2 2
5 97 3 1
6 102 3 2
7 96 4 1
8 103 4 2
这适用于任意数量的列。