excel表格中怎么自动排序(如有高阶函数,对 Excel 文本数字排序就会变得非常简单)

wufei123 发布于 2023-10-18 阅读(799)

很多同学会觉得 Excel 单个案例讲解有些碎片化,初学者未必能完全理解和掌握不少同学都希望有一套完整的图文教学,从最基础的概念开始,一步步由简入繁、从入门到精通,系统化地讲解 Excel 的各个知识点。

现在终于有了,以下专栏,从最基础的操作和概念讲起,用生动、有趣的案例带大家逐一掌握 Excel 的操作技巧、快捷键大全、函数公式、数据透视表、图表、打印技巧等……学完全本,你也能成为 Excel 高手

excel表格中怎么自动排序(如有高阶函数,对 Excel 文本数字排序就会变得非常简单)

专栏Excel从入门到精通作者:Excel学习世界99币79人已购查看之前给大家详细讲解了如何通过公式对文本数字排序,其实类似的公式有很多今天要教几个用到 O365 函数的公式,不得不说,高阶函数确实能简化人类的工作。

案例:将下图 1 中的部门按升序排序,效果如下图 2 所示。

解决方案 1:1. 在 B2 单元格中输入以下公式:=SORTBY(A2:A10,FIND(MID(A2:A10,3,1),"一二三"))公式释义:MID(A2:A10,3,1):将 A2:A10 区域中每个单元格的第 3 位提取出来,会生成一组由文本数字组成的数组;

FIND(...,"一二三"):依次查找上述数组是否含有文本“一二三”中的任意字符,如果有,则返回该字符在文本字符串中的位置,是一个数值;SORTBY 函数的语法如下:SORTBY(要排序的区域,用于设置排序规则的区域,[升序还是降序]);

可选参数为 1 或默认值时,表示升序;-1 表示降序;本公式的意思是,对 find 查找出的这组数值按升序排序,然后以这个规则将部门重新排序;简单来说就是将中文数字提取出来,通过 find 函数转换成了对应的数值,然后再对数值升序排序

解决方案 2:1. 在 B2 单元格中输入以下公式 --> 下拉复制公式:=IFS(COUNT(FIND("一",A2)),1,COUNT(FIND("二",A2)),2,TRUE,3)公式释义:ifs 的作用本质上跟 if 是一样的,只是把语法简化了,不再需要层层嵌套;

COUNT(FIND("一",A2)),1:在 A2 单元格中查找“一”,找到返回所在的位置数,找不到返回错误值;用 count 函数计算结果是否为数值,即是否找到,找到的话,返回数值 1;COUNT(FIND("二",A2)),2:公式同理,找到“二”就返回数值 2;

TRUE,3:如果都找不到,则返回 3

2. 选中 B 列的任意单元格 --> 选择菜单栏的“数据”-->“升序”

A 列就按部门顺序排序好了。

解决方案 3:1. 也可以将 B 列的公式修改如下:=SWITCH(MID(A2,3,1),"一",1,"二",2,"三",3)公式释义:switch 函数相当于将 ifs 函数再次简化了,语法为 SWITCH(要转换的值, 要匹配的值 1, 如存在匹配项 1 需返回的值, [要匹配的值 2], [如存在匹配项 2 需返回的值]...)

MID(A2,3,1):用 mid 函数提取出 A 列的文本数字;一",1,"二",2,"三",3:当文本为“一”、“二”、“三”时,分别返回数值 1、2、3

2. 对 B 列进行升序排序,A 列也同步排序好了。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

大众 新闻11148