Excel - 如何按 A 列排序,然后按 B 列排序,然后按 C 列排序,等等

Excel - 如何按 A 列排序,然后按 B 列排序,然后按 C 列排序,等等

我想知道如何按 A 列进行排序,然后按 B 列进行排序,再按 C 列进行排序,等等

例如

假设我有这些数据

未分类

2   1   4   3
1   3   3   2
5   1   1   4
5   4   2   5
1   2   5   5
4   3   3   1
3   2   5   4
1   5   1   5
4   4   1   2
1   4   4   1
5   3   2   4
3   5   1   3
2   4   3   3
1   2   3   1
5   1   5   1

我想按 A 列排序,

那么所有 col A 具有类似值的行将聚集在一起。

对于每一束,我想按 Col B 排序,对于每一束,我想按 Col C 排序,最终结果是

1   2   3   1
1   2   5   5
1   3   3   2
1   4   4   1
1   5   1   5
2   1   4   3
2   4   3   3
3   2   5   4
3   5   1   3
4   3   3   1
4   4   1   2
5   1   1   4
5   1   5   1
5   3   2   4
5   4   2   5

所以,我还没有对 D 列做任何事情。

如果不清楚的话我可以分解它,但我会使用一个较小的例子。

可以按 A 列排序,

然后将其分开,例如

1   3   3   2
1   2   5   5
1   5   1   5
1   4   4   1
1   2   3   1

2   1   4   3
2   4   3   3

然后按 B 列对每个块进行排序,因此,在本例中,A 列包含 2 的块已经按 B 列排序。我们得到

1   2   5   5
1   2   3   1
1   3   3   2
1   4   4   1
1   5   1   5

2   1   4   3
2   4   3   3

然后按 C 列排序(每个相同的 A、B),可以将其分开

因此我们得到

1   2   5   5
1   2   3   1

1   3   3   2

1   4   4   1

1   5   1   5

2   1   4   3

2   4   3   3

我们看到有很多 1 行的数据块,因此无需排序。我们有一个 2 行的数据块,它们尚未按 col c 排序,因此它们将重新排序。

所以

1   2   5   5
1   2   3   1

会变成

1   2   3   1
1   2   5   5

其余保持不变,因此我们得到

1   2   3   1               
1   2   5   5
1   3   3   2               
1   4   4   1               
1   5   1   5           
2   1   4   3               
2   4   3   3

请注意,它是按列 A、列 B、列 C 排序的,从某种意义上说,它是按列 A 排序的,并且对于列 A 内的每个块,它按列 B 排序,并且对于列 A 和列 B 中的每个块,它按列 C 排序。

我想知道在 Excel 中是否有一种相当自动化的方法可以做到这一点,而不是手动对每个块进行排序?

答案1

在 Excel 中,选择数据..排序

在此处输入图片描述

然后选择“添加级别”,您可以选择多列

在此处输入图片描述

显然 SQL 也能做到这一点,如下所示SELECT ... ORDER BY col_a, col_b, col_c;

相关内容