由于Excel强大的数据操作处理功能,我们通常会选择在Excel里保存各种各样的数据,然后对数据进行不同情况的统计分析,其中最常用的一个分析操作是数据的排序。默认情况下Excel排序是对单元格内的内容进行升序或降序排序,当我们有多列数据,需要根据其他列的数据情况进行排序时就需要做特殊处理。有时候我们也会根据单元格内数据出现的次数进行排序,那么本次笔者就讲解如何在Excel里面实现按某列单元格内数据出现的次数进行排序。
首先准备工作如下:
在上面步骤中创建好的Excel文件中的第一个工作表格内输入一个历届冠军统计信息,如下图所示:
在上面的统计信息表格内的D列输入表头,用于展示排名的信息,截图如下:
打开VBA编辑器,设计一个自定义的排序函数,用于实现对B列内容出现的次数进行排序,如下图所示:
在D2单元格内输入公式 =排序(B$2:B$26,ROW(A1)),以便应用上面设计的自定义排序函数,如下图所示:
按下回车键,即可出现默认排序顺序为降序的第一名的冠军姓名,如下图所示:
鼠标选中D2单元格,鼠标放在单元格右下角,当出现黑色十字架时,再鼠标左键按下不放,向下拖拉到B列内容最后一行即可松掉鼠标左键,截图如下:
此时已经可以看到按出现次数降序排列,即出现次数从多到少的排列情况,为了确认排序顺序是否正确,下面是人工统计的冠军出现次数的统计和排序对比截图,出现次数相同时按照在B列出现的先后顺序进行排序,截图如下:
通过上面几个简单步骤的操作,就轻松的实现了在Excel中按照某列内容在单元格中出现的次数进行降序排序,实际上也是可以按升序排序的,此时只需要在公式中加入第三个参数,参数值为False,感兴趣的朋友可以尝试一下。