2024年5月11日发(作者:)

Excel新排序函数Sort和Sortby用法简

一、Sort函数用法简介

概念

Sort函数是Excel 2021中新增的一个函数,用于对一组数据进行排序。它可以

将一组数据按照指定的顺序进行排序,方便用户进行数据处理和分析。

功能

Sort函数可以对一组数据进行升序或降序排序,可以按照一个或多个列进行排

序,可以按照行或列的方向进行排序,还可以自定义排序的顺序。

语法

Sort函数的语法如下:

=SORT(array, [sort_by_col], [sort_order], [relative], [criteria])

参数介绍:

array:要排序的数据区域。

sort_by_col:按照哪一列进行排序,可以省略,默认为第一列。

sort_order:排序的顺序,可以是升序(1)或降序(-1),默认为升序。

relative:是否按照相对位置进行排序,可以省略,默认为FALSE。

criteria:自定义排序的顺序,可以省略。

案例

下面通过一个简单的案例来演示Sort函数的使用方法。假设我们有一个包含员

工姓名和工资的数据表,我们需要按照工资从高到低对员工进行排序。

首先,在Excel中打开数据表,并将鼠标定位在要输出排序结果的单元格中。

然后,在编辑栏中输入以下公式:

=SORT(A2:B10, 2, -1)

*这个公式表示要对A2:B10区域的数据进行排序,按照第二列(即工资)进行

降序排序。

按下回车键,即可得到排序结果。

在这个案例中,比较重要的语句是:=SORT(A2:B10, 2, -1)。这个语句指定了要

排序的数据区域、按照哪一列进行排序以及排序的顺序。在实际使用中,用户可

以根据需要自定义这些参数。

注意事项

1. Sort函数只能对一组数据进行排序,不能对单个单元格的数据进行排序。

2. 在使用Sort函数时,要注意选择正确的数据区域和排序列。如果数据区域

或排序列选择错误,会导致排序结果不正确。

3. Sort函数是按照数组的方式进行排序的,因此在使用Sort函数时要注意使

用Ctrl+Shift+Enter组合键来输入数组公式。

4. 如果要对多个列进行排序,可以使用多个Sort函数嵌套来实现。

5. Sort函数可以自定义排序的顺序,可以通过设置criteria参数来实现。例如,

要按照工资从高到低对员工进行排序,可以使用以下公式:=SORT(A2:B10,

2, -1, FALSE, {"John", "Jane", "Tom"})。这个公式表示要对A2:B10区域的

数据进行排序,按照第二列(即工资)进行降序排序,并且按照John、Jane、

Tom的顺序对员工进行排序。

6. Sort函数还支持按照行或列的方向进行排序。如果要按照行的方向进行排

序,可以使用transpose函数将数据转置后再使用Sort函数进行排序。例

如,要对A2:B10区域的数据按照行的方向进行排序,可以使用以下公式:

=TRANSPOSE(SORT(TRANSPOSE(A2:B10), 2, -1))。这个公式表示要将

A2:B10区域的数据转置后再进行排序,按照第二行(即工资)进行降序排

序。

7. Sort函数还支持对文本、数字、日期等多种类型的数据进行排序。如果要对

日期类型的数据进行排序,需要注意日期的格式是否正确,否则可能会导致

排序结果不正确。

二、Sortby函数用法简介

概念

Sortby函数是Excel 2021中新增的一个函数,用于对一组数据进行排序。它可

以将一组数据按照指定的顺序进行排序,方便用户进行数据处理和分析。与Sort

函数相比,Sortby函数具有更加灵活的排序方式,可以对多个列进行排序,并

且可以自定义排序的顺序。

功能

Sortby函数可以对一组数据进行升序或降序排序,可以按照一个或多个列进行

排序,可以按照行或列的方向进行排序,还可以自定义排序的顺序。与Sort函

数相比,Sortby函数的最大特点是它可以指定多个排序列,并且可以自定义每

个排序列的排序顺序。

语法

Sortby函数的语法如下:

=SORTBY(array,

[sort_order2], ...)

参数介绍:

array:要排序的数据区域。

sort_by_col1:第一个排序列的列号,可以省略,默认为第一列。

sort_order1:第一个排序列的排序顺序,可以是升序(1)或降序(-1),默认

为升序。

sort_by_col2:第二个排序列的列号,可以省略。

sort_order2:第二个排序列的排序顺序,可以是升序(1)或降序(-1),可以

省略。

...:可以指定多个排序列。

案例

下面通过一个简单的案例来演示Sortby函数的使用方法。假设我们有一个包含

员工姓名、年龄和工资的数据表,我们需要按照年龄从大到小对员工进行排序,

如果年龄相同则按照工资从高到低进行排序。

首先,在Excel中打开数据表,并将鼠标定位在要输出排序结果的单元格中。

然后,在编辑栏中输入以下公式:

=SORTBY(A2:C10, 2, -1, 3, -1)

[sort_by_col1], [sort_order1], [sort_by_col2],

这个公式表示要对A2:C10区域的数据进行排序,按照第二列(即年龄)进行降

序排序,如果年龄相同则按照第三列(即工资)进行降序排序。

按下回车键,即可得到排序结果。

在这个案例中,比较重要的语句是:=SORTBY(A2:C10, 2, -1, 3, -1)。这个语句

指定了要排序的数据区域、第一个排序列(年龄)、第一个排序列的排序顺序(降

序)、第二个排序列(工资)和第二个排序列的排序顺序(降序)。在实际使用

中,用户可以根据需要自定义这些参数。

注意事项

1. Sortby函数只能对一组数据进行排序,不能对单个单元格的数据进行排序。

2. 在使用Sortby函数时,要注意选择正确的数据区域和排序列。如果数据区

域或排序列选择错误,会导致排序结果不正确。

3. Sortby函数是按照数组的方式进行排序的,因此在使用Sortby函数时要注

意使用Ctrl+Shift+Enter组合键来输入数组公式。

4. 如果要对多个列进行排序,可以使用多个Sortby函数嵌套来实现。

5. Sortby函数可以自定义排序的顺序,可以通过设置每个排序列的

sort_order参数来实现。例如,要按照年龄从大到小对员工进行排序,如果

年龄相同则按照工资从高到低进行排序,可以使用以下公式:

=SORTBY(A2:C10, 2, -1, 3, -1)。这个公式表示要对A2:C10区域的数据进

行排序按照第二列(即年龄)进行降序排序如果年龄相同则按照第三列(即

工资)进行降序排序。

三、Sort和Sortby函数其他用法简介

Sort函数除了可以用于对某个区域或数组的内容进行简单排序外,还具有一些

高级用法,包括:

按照多个列进行排序

通过在Sort函数中指定多个排序列的列号和排序顺序,可以实现按照多个列进

行排序。例如,如果要同时按照英语成绩从高到低和数学成绩从低到高对一个包

含学生英语和数学成绩的数据表进行排序,可以使用以下公式:

=SORT(A2:D10,4,1,3,-1)。这个公式表示要对A2:D10区域的数据进行排序,按

照第一列(即英语成绩)从高到低排序,如果英语成绩相同,则按照第二列(即

数学成绩)从低到高排序。

自定义排序顺序

通过在Sort函数中设置排序顺序参数为自定义的序列,可以实现自定义排序顺

序。例如,如果要对一个包含员工姓名、年龄和工资的数据表按照姓名笔画数从

少到多进行排序,可以使用以下公式:=SORT(A2:C10,1,{1,2,3,4,5})。这个公式

表示要对A2:C10区域的数据进行排序,按照第一列(即姓名)笔画数从少到多

排序。

筛选排序

通过将Sort函数与其他函数(如Filter函数)结合使用,可以实现筛选排序。

例如,如果要筛选出销量大于5000的商品,并按照销量从高到低进行排序,可

以使用以下公式:=SORT(FILTER(A2:B10,B2:B10>5000),2,-1)。这个公式表示

要对A2:B10区域的数据进行筛选,筛选出销量大于5000的商品,并按照第二

列(即销量)从高到低进行排序。

Sortby函数作为Excel 2021的新增函数,具有一些独特的功能和用法。其中最

突出的是它可以实现多字段升降排序。具体来说,Sortby函数可以按照多个列

进行排序,并且每个排序列可以设置不同的排序顺序。例如,如果要按照学生英

语成绩从高到低、数学成绩从低到高进行排序,可以使用以下公式:

=SORTBY(A2:D10,4,1,3,-1)。这个公式表示要对A2:D10区域的数据进行排序,

按照第一列(即英语成绩)从高到低排序,如果英语成绩相同,则按照第二列(即

数学成绩)从低到高排序。

总之,Sort和Sortby函数都是Excel中非常强大的排序函数,它们可以灵活地

实现各种不同的排序需求。掌握这些函数的高级用法可以让您在处理数据时更高

效、更便捷。