财物经理的专业技能:Excel函数排序与筛选

来源:百度文库 编辑:九乡新闻网 时间:2024/04/27 04:46:09

二、用函数实现筛选

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

方法:第一步在G2单元格输入公式”=IF(OR(AND(C2="女",D2>=22,D2<=45),AND(C2="男",

D2>=25,D2<=50)),ROW(A1),0)“,在H2单元格输入公式”=IF(AND(C2="女",E2="博士"),

ROW(B1),0)“,在I2单元格输入公式”=IF(AND(C2="男",E2="博士后"),ROW(B1),0)“。在J2单元格输入公式“=IF(K$2=1,LARGE(G:G,ROW(A1)),IF(K$2=2,LARGE(H:H,ROW(A1)),

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

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

公式“=IF($J2=0,0,INDEX($A$2:$F$501,$J2,COLUMN(A$1)))”,然后向右拖放到Q2,再向下拖放。INDEX函数的含义上文已说明。

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

上述方法的最大优点就是引用的区域很准确,特别是三维引用时不容易发生工作表或工作簿名称输入错误的问题。