网站首页 > 知识剖析 正文
工作中接到一个咨询,说领导要他将下面的数据按在学历高低排序的同时,再结合绩效降序排序,关于这个问题,思考的逻辑就是排序的问题,排序中的自定义排序的问题。
这个问题的产生原因,中文在排序方面特殊性。电脑并不知道该怎么排序。
如:一班、二班、三班、周日、周一等
要解决上面的问题有多种方法:
方法1:创建自定义排序,按本科、专科、高中、初中这样的顺序排序;
方法2:创建一列辅助列,强制编号1、2、3, 然后用VLOOKUP引用过去,再排序
……
今天古老师分享的是用SORTBY来解决这个问题,还是老方法:
分别从:函数参数、注意事项、函数安全这三大方向着手
- 函数参数
函数定义: 函数基于相应范围或数组中的值对范围或数组的内容进行排序
白话说明: 就是用公式创建一个新的数据区域,按用户指定条件,多条件排序
使用格式: SORTBY (array, by_array1, [sort_order1], [by_array2], [sort_order2],...)
对应版本: OFFICE365、OFFICE2021
参数 | 参数要求 | 参数说明 |
array | 必需 | 要排序的区域或数组 |
by_array1 | 必需 | 要对其进行排序的数组或区域 |
[sort_order1] | 可选 | 一个数字,表示所需的排序顺序;1 表示升序(默认值),-1 表示降序 |
[by_array2] | 可选 | 要对其进行排序的数组或区域 |
[sort_order2] | 可选 | 一个数字,表示所需的排序顺序;1 表示升序(默认值),-1 表示降序 |
- 注意事项
1.可将数组视为一行值、一列值或几行值和几列的组合。
2.SORTBY 函数将返回一个数组,如果该数组是公式的最终结果,则将溢出。
3.按“Enter”时,Excel 将动态创建相应大小的数组范围
4.Excel 对工作簿之间的动态数据提供有限支持,并且仅当这两个工作簿都处于打开状态时才支持此方案。
5.针对8的理解就是尽量内部关联,外部引用如果关了一个就会出错误,返回 #REF! 错误
- 函数案例
一般用法
案例1:按不同销售员的销售数量降序排序
在不更改源数据的情况下,我们只需要在新的工作表中录入以下函数就可以实现多条件排序。
=SORTBY(B26:D36,D26:D36,1,C26:C36,-1)
案例1:排程整理
我们在排程过程中,对各类产品进行排程,当排程完后,数据有可能是如下状态,从视觉效果来看,体验不是很好,如果我们能够对数据进行整理,效果就会完全不一样
此时我们创建一个新表,录入以下公式,返回结果如下图:
对比图1和图2,可以看出在阅读体验效果上的差异,对于古老师的强迫症是一个非常好的一个方案;
高级用法
案例1:按学历高低、和绩效双条件排序
下图中的难点在于,学历没有办法按高低排序;
此时我们可以创建一个临时辅助区域,对学历进行人工定义排序
步骤:选中学历列→复制到新区域→删除重复项目→人工定义排序→公式合并成一列
=TEXTJOIN(,,N72:N75)
'=SORTBY(B77:E86,FIND(C77:C86,N77),1,E77:E86,-1)
思路解释:
1、通过人工定义需要排序的数据进行强制排序
2、再通过合并需要排序的数据在一个单元格格
3、配合FIND函数找到对应源数据的位置号
4、再配合SORTBY函数进行强制排序
5、可以通过公式→求值→看每一步的运算结果;
案例2:对下面的数据进行随机分成三个组
看到上面的要求,需要随机,少不了是随机函数RAND(),此时我们只需加上辅助列,录入RAND函数,再通过SORTBY进行数据重建,就可以实现,然后不停的按F9就达到效果了。
'=SORTBY(B92:C100,C92:C100,1)
高阶应用需要理解以下函数:
- SORTBY 多条件排序
- TEXTJION 多单元格合并一单元格
- FIND 文本查找位置
- RAND 生成随机数
最后总结:
我是古哥:
从事制造行业18年,在企业运营、供应链管理、智能制造系统等方面具有丰富的实战经验。企业智能化,柔性化计划运营管理专家,擅长通过企业流程优化规范,企业管理、导入计划运营提升企业效率;对提高企业准时交货率,降低企业库存,输出智能制造人才有丰富的经验。学习PMC生产计划,关注古哥计划!8月特训班2期即将开班,全方位学习计划运营知识。
- 上一篇: 深入浅出Redis:Redis的排序命令Sort
- 下一篇: javascript sort()方法
猜你喜欢
- 2024-11-26 javascript sort()方法
- 2024-11-26 排序神器,SORT与SORTBY函数用法详解,解决多年老问题
- 2024-11-26 深入浅出Redis:Redis的排序命令Sort
- 2024-11-26 Excel 多条件排序函数SORTBY,不同数据区域指定不同排序方式
- 2024-11-26 Arrays.sort()方法到底用的什么排序算法(1)
- 2024-11-26 Arrays.sort()方法到底用的什么排序算法(2)
- 2024-11-26 C语言编程实例5
- 2024-11-26 Excel 数据自动排序函数SORT,数据排序原来如此简单
- 2024-11-26 我排序2分钟,同事用sort函数排序几秒,排序结果还能自动更新
- 2024-11-26 面试官问我Arrays.sort()为什么可以对int等数组进行排序
- 最近发表
- 标签列表
-
- xml (46)
- css animation (57)
- array_slice (60)
- htmlspecialchars (54)
- position: absolute (54)
- datediff函数 (47)
- array_pop (49)
- jsmap (52)
- toggleclass (43)
- console.time (63)
- .sql (41)
- ahref (40)
- js json.parse (59)
- html复选框 (60)
- css 透明 (44)
- css 颜色 (47)
- php replace (41)
- css nth-child (48)
- min-height (40)
- xml schema (44)
- css 最后一个元素 (46)
- location.origin (44)
- table border (49)
- html tr (40)
- video controls (49)