乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > excel排序-Excel中通过函数实现对表格数据自动升降序排序,简单到没朋友!

excel排序-Excel中通过函数实现对表格数据自动升降序排序,简单到没朋友!

作者:乔山办公网日期:

返回目录:excel表格制作

Excel中通过函数实现对表格数据自动升降序排序,简单到没朋友!我们先来看一下效果演示:


效果演示


这种排序的特点是:


  1. 未使用到任何的VBA宏代码,通过纯函数功能实现;
  2. 通过选项按钮实现升序和降序的选择;
  3. 即使数据中存在重复值也一样可以进行排序;
  4. 输入数据后即可以实现实时排序的效果;

如果你喜欢这种效果,那就跟着这篇教程一起学习吧!


第1步:在C列建立辅助列;


目的:此步骤的目的是为了处理重复数据。通过在原数据上加一个特别小的不重复值,将原数据转换为不可能出现重复值的情况;


在C3单元格输入以下公式,并向下拖动公式至C11单元格:=B3+ROW()/1000000


建立辅助列


第2步:插入选项按钮,实现升、降序的选择;


点击开发工具-插入-选项按钮控件,在表格的空白位置拖动,画出2个控件,并分别命名为升序和降序,并右键设置控件格式,将单元格链接指定到单元格:$F$2,这样设置后,当我们点击升序选项时,$F$2单元格的值显示为1;点击降序选项时则显示为2;


建立升降序选项按钮


第3步:使用自定义格式将$F$2显示为升序或降序;


选择单元格$F$2,右键设置单元格格式,分类选:自定义,类型中输入以下格式代码:


[=1]升序;[=2]降序;

自定义格式


第4步:输入函数计算得出升降序;


  • 在E3单元格输入以下公式并拖动公式至E11单元格:

=IF($F$2=1,INDEX($A$3:$A$11,MATCH(SMALL($C$3:$C$11,ROW(A1)),$C$3:$C$11,0),1),INDEX($A$3:$A$11,MATCH(LARGE($C$3:$C$11,ROW(A1)),$C$3:$C$11,0),1))

  • 在F3单元格输入以下代码并拖动公式至F11单元格:

=IF($F$2=1,INDEX($B$3:$B$11,MATCH(SMALL($C$3:$C$11,ROW(A1)),$C$3:$C$11,0),1),INDEX($B$3:$B$11,MATCH(LARGE($C$3:$C$11,ROW(A1)),$C$3:$C$11,0),1))

公式锦囊:INDEX+MATCH是经典的查询定位函数组合;LARGE和SMALL函数是返回第N个最大值和最小值的函数;ROW(A1)函数是返回行号的函数,用于产生序列1,2,3……;


  • 通过条件格式-数据条设置蓝色数据条的效果:

输入核心公式


总结:在Excel中,函数的功能非常强大。如果你需要今天教程所使用的课件,你可以在私信中回复关键词“自动升降序”即可获取。如果你喜欢今天的教程,请别忘记点赞并转发给更多小伙伴哦!


相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网