接上文
Excel支持的排序方法有两种:
字母顺序
笔划顺序
字母顺序
绝大部分排序的顺序都是字母顺序。即按照字母的先后顺序进行排序:
a<b<c<......<z<A<B<......<Z。
如果第一个字母相同,比如都是a,再按照上面的顺序比较第二个字母。
这仅仅是英文文本的顺序。
如果是中文文本,就按照拼音的字母顺序进行排序。
如果是数字(即使是文本格式的数字),就按照数字的大小进行排序。
如果是混排,比如有数字,有英文,有中文,还有标点符号,它们的顺序是:
数字<各种标点符号<英文文本<中文文本
下面是一个例子:
笔划排序
笔划排序是针对汉字来说的。按照汉字笔画的多少进行排序。如果遇到数字,英文字母等,仍然按照拼音排序。
下图 列出了拼音排序和字母排序的对比:
简单排序采用的排序方法
对于“复杂排序”,可以在排序对话框中设置排序方法,本次排序就按照这种设定的方法进行排序。
那么简单排序又采用什么方法呢?在大部分人的经验中,简单排序都是采用拼音排序。但这只是因为Excel缺省的排序方法都是拼音排序。
实际上,进行简单排序时,Excel按照上一次在“复杂排序”对话框中设置的排序方法进行排序,如果上一次设定的是拼音排序,那么简单排序就采用拼音排序。如果上一次设定的是笔划排序,那么简单排序就采用笔划排序。如果从来没有设定过排序方法,就按照缺省的方法(拼音排序)进行排序。
在排序的对话框中,选择顺序时,除了升序,降序,还可以选择自定义序列。这样Excel就会按照自定义序列进行排序。
假设我们有如下数据:
杂乱无章。我们当然可以按照部门进行排序,升序降序随意:
但是,有时候,我们的最终结果中要求这些数据有固定的顺序,比如,必须按照如下的部门顺序:
此时,就用到了自定义序列。
在排序对话框中,选择自定义序列:
会弹出如下对话框:
左边列出了已有的自定义序列。在右边可以输入新的序列:
每一条用回车隔开。
点击添加,在左边列表中添加了一条新的自定义列表:
点击确定,回到排序对话框:
次序变成了自定义序列。点击确定,完成排序:
需要提醒两点:
在进行自定义序列排序时,可以按照输入时的顺序排列,也可以按照输入时的顺序反向排列。
排序列中的数据必须完全与序列中的一致,比如,必须写成“财务部”,写成“财务”,“财务一部”等等都不行,得不到想要的结果。
数据透视表中的排序又跟一般表格中的排序有所不同。具体请参见:
在数据处理和数据分析中经常会用到排序。
有时候排序是强制要求。
例如,在VLOOKUP函数,MATCH函数的近似匹配模式中,或者XLOOKUP函数,XMATCH函数的二进制搜索中,排序是强制要求。对于前两者来说,必须是升序,对于后两者来说,根据参数的不同选择升序或者降序。
除了这些强制的排序应用外,还有一些利用排序的特点完成数据清洗的例子。
例1:找到错误日期
例如,我们有一列日期数据:
其中有错误日期。在数据比较多的情况下,很难通过肉眼发现这些错误数据。这时,我们可以对日期列进行降序排序:
根据数据类型的知识,我们知道,标准的日期实际上是数值,而那些错误的日期因为不能转换为数值,所以只能当作文本。而根据上面的介绍我们知道,文本总是大于数值的,所以降序排列后,错误的日期就排在了前面,很容易就可以发现了。
例2:删除空行
有一些不太规范的数据表中(比如,用于随意等级的信息表等)经常会在数据之间出现很多空行:
数据较多的时候,不可能手工删除。
此时,可以选中B:C两列,然后排序,选择任意列作为关键字,升序即可:
点击确定后,就得到去掉空行的记录了:
在实际工作中使用排序进行数据处理的例子还有很多,比如隔行插行,比如下面这个例子:
Excel+Power Query+Power Pivot+Power BI
自定义函数 底部菜单:知识库->自定义函数
面授培训 底部菜单:培训学习->面授培训
也可以在历史文章中学习Excel,Power Query,Power Pivot,Power BI,Power Automate各种技巧。
联系客服