Excel利用Excel筛选排序功能进行排序

今天与朋友们分享一个很有用的Excel函数它可以使你在Excel筛选排序后,删除行增加行这些操作之后,使排序序号自动编号非常方便。

该函数可以计算所选单元格范围内的非空单元格的数量当第一个参数为103时,表示忽略隐藏值

比如我们在C列测试一下,Excel筛选排序出语文得分大于80分的学生

可以发现前边的序列编号自动变化,仍然是从1开始按顺序来动态变化的了非常方便直观。

}

 我们除了可以对数据表进行简单嘚升序或降序排列之外还可以设置多个排序字段,按照多个关键字对数据进行排序excel多个关键字对数据进行排序的其具体操作方法如下:

    1、单击excel的“数据”选项卡下“排序和Excel筛选排序”组中的“排序”按钮,如图1所示

    2、在弹出“排序”对话框中,在“主要关键字”下拉列表框中选择“语文”选项在“次序”下拉列表中选择“降序”选项,如图2所示

    3、单击“添加条件”按钮,添加次要关键字并进行設置,如图3所示

    4、最后单击“确定”按钮进行排序,排序效果如图4所示

    上面的步骤就是,我们根据excel多个关键字对数据进行排序的方法一般用于在数据比较多的情况下,如果我们的数据比较少我们就没有必要再次添加次要关键字了。 

}

Execl本身具有很方便的排序与Excel筛选排序功能下拉“数据”菜单即可选择排序或Excel筛选排序对数据清单进行排序或Excel筛选排序。但也有不足首先无论排序或Excel筛选排序都改变了原清单的原貌,特别是清单的数据从其它工作表链接来而源数据发生变化时或清单录入新记录时必须从新进行排序或Excel筛选排序。其次还有局限例如排序只能最多对三个关键字(三列数据)排序,Excel筛选排序对同一列数据可用“与”、或“或”条件Excel筛选排序但对不同列数据只能鼡“与”条件Excel筛选排序。例如对某张职工花名册工作簿要求Excel筛选排序出年龄大于25岁且小于50岁或年龄大于50岁或小于25岁都是可行的,如同时偠求性别是男的或女的也是可行的但要求Excel筛选排序出女的年龄在22岁到45岁,男的年龄在25岁到50岁时Execl本身具有的Excel筛选排序功能则无能为力了洅者排序与Excel筛选排序不能结合使用,即不能在排序时根据条件Excel筛选排序出来的记录进行排序例如有一张职工资料清单,其中有的职工已經退休对在职职工的年龄进行排序时无法剔除已退休职工的数据。

本文试图用来解决上述问题

如有一张工资表,A2:F501,共6列500行3000个单元格表頭A1为姓名代码(1至500)、B1为姓名、C1为津贴、D1为奖金、E1为工资、F1收入合计。现要求对职工收入从多到少排序且在职工总收入相同时再按工资从多箌少排序,在职工总收入和工资相同时再按奖金从多到少排序在职工职工总收入和工资、奖金相同时再按津贴从多到少排序。

CONCATENATE是一个拼匼函数可以把30个以下的单元的数据拼合成一个数据,这些被拼合的数据之间用逗号分开用f2、e2等被拼合的数据用999来减,是为了使它们位數相同(假定任何一个职工的总收入少于899元)。被拼合成的函数是文本函数CONCATENATE与INT函数套用是为了使文本转换为数字。最外层的if函数是排序时鼡来剔除不进行排序的记录在本例中指收入为零的记录。(在上文提到的职工年龄排序则公式改为“if(f2="退休",10^100,.....)”,即剔除了退休职工。)

第二步紦G1单元格的公式拖放到G500单元格(最简便的方法是点击G1单元格后向G1单元格右下方移动鼠标见到黑十时双击鼠标就完成了G1到G500的填充)。

第四步把A1臸F1单元格的表头复制到I1至N1单元格在I2单元格输入公式“=INDEX($A$2:$F$501,$H2,COLUMN(A$1))”INDEX函数是一个引用函数,即把$A$2:$F$501单元格列阵第$H2行第COLUMN(A$1)列的数据放入I2单元格然后把I2单元格的公式拖放到N2单元格,点击N2单元格后向N2单元格右下方移动鼠标见到黑十时双击鼠标就完成了I2到N501单元格的填充到此全部完成

以上叙述看姒繁杂实际非常简单,只要把A1至F1的表头复制到I1至N1单元格再分别在G1、H2、I2单元格输入公式然后向下拖放,即使对EXCEL应用不熟练的同志一分锺内便能完成

并把H2单元格的公式向下拖放。这样在O1单元格输入1上面例子数据是从大到小排列的O1单元格输入1以外的数上面例子数据就从小到夶排列了。

如在H列前插入若干列如插入一列,则现在的H列输入类似G列的公式例如

即在P单元格输入1以外的值就实现了按奖金大小排序.这樣只要通过改变P1(原来的O1单元格)单元格内容的改变就能立即得到按不同要求的排序。

如有一张职工名册表A2:F501,共6列500行3000个单元格。表头A1为姓名代碼(1至500)、B1为姓名、C1为性别、D1为年龄、E1为学历、F1职称现要求对职工的性别、年龄、学历、职称进行交错Excel筛选排序,例如要求在同一张表上Excel筛選排序出1、女的年龄在22岁到45岁男的年龄在25岁到50岁,2、女博士3、男博士后。

IF(K$2=3,LARGE(I:I,ROW(A1)),0)))”然后用上述提到的方法向下拖放G、H、I列的公式的含义就昰凡符合Excel筛选排序条件的行记录下行号否则为零,J列的公式的含义根据K2的数值选择G、H、I中的一列进行排序并把不合条件的行除去

第二步茬K1单元格输文字”Excel筛选排序选择”,A1到F1表头复制到L1到Q1在L2单元格输入

第三步在P1单元格输入1或2或3便可实现上述三种Excel筛选排序。

}

我要回帖

更多关于 Excel筛选排序 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信