
收到粉丝提问:excel怎样用公式把7列数字横排由小到大在新的单元格排序?由于其没有给出具体的数据,就以随机的数字为例来做分享。
可以使用公式将一列或多列数字从小到大排序,并将结果横向显示在新的单元格区域。

假设数据在A1到G1单元格中,数据为25~89的随机整数。希望将这些数字从小到大排序,并将结果放在新的单元格区域中。如图所示:

方法一:SORT函数
可以使用 Excel 的SORT函数,该函数在支持动态数组公式的版本中才能使用哦,如 Excel 365 和 Excel 2019。
SORT 函数是 Excel 中用于对数据进行排序的动态数组函数,可以对数据进行升序或降序排列,并返回排序后的结果。
基本语法为:SORT(array, [sort_index], [sort_order], [by_col]),即SORT(数组,[排序依据],[排序顺序],[按列])。
其中:
array:要排序的数组或范围。
sort_index:指定排序的列或行的索引。如果数据是横向的,则此参数指定排序依据的列;如果数据是纵向的,则此参数指定排序依据的行。默认为 1。
sort_order:排序顺序。1 为升序(默认),-1 为降序。
by_col:指定排序方向。FALSE(默认)表示按行排序,TRUE 表示按列排序。
选中显示排序结果的单元格区域,如A3:G3,然后,输入这个公式:=SORT(A1:G1,1,1,TRUE)
按下Ctrl+Shift+Enter三键结束公式。这个公式会对范围 `A1:G1` 中的数字进行从小到大排序,并将结果横向显示在新的单元格区域中。

方法二:SMALL函数
如果你的Excel 版本不支持SORT函数,还可以使用SMALL函数来实现排序。
SMALL 函数在 Excel 中用于返回数据集中第 k 小的值。
在需要显示排序结果的单元格,如A3,输入这个公式:=SMALL($A$1:$G$1, COLUMN(A1))
然后将 A3 单元格的公式拖动填充到右边的单元格中(例如拖到 G3)。这个公式会提取数据中第 n 小的值,其中 n 是当前列的位置。
基本语法为:SMALL(array, k)
其中:
array:需要从中获取第 k 小值的数组或范围。
k:要返回的第 k 小值,其中 k 是一个正整数。例如,k=1 将返回最小值,k=2 将返回第二小的值,以此类推。
在公式中,$A$1:$G$1是SMALL函数需要排序的范围,通过COLUMN(A1)计算当前列号,这样可以依次提取第 1 小、第 2 小、第 3 小……的值。

使用SORT函数是最简便的方法,但如果你的 Excel 版本不支持该函数,SMALL`函数也是一种有效的替代方法哦。
通过以上两个函数公式,可以轻松地将7列数字横排由小到大排序,并在新的单元格中显示结果。
如果您还有更好的方法,欢迎在下方评论区留言交流哦~
想了解更多精彩内容,快来关注