通常在Excel中筛选数据时是针对某列进行的,有时需要在筛选时同时考虑其他列,如按类别进行筛选。例如在下图所示的表格中,A列列出了各销售部门,C列为各销售人员的销售额,现在需要筛选出各“销售部门”前5名的销售人员。
??????
??? 假如数据在A2:C60区域中,以Excel 2010为例,方法如下:
??? 方法一:辅助列+公式
??? 1.以D列为辅助列,在D2单元格中输入公式:
??? =SUMPRODUCT(($A$2:$A$60=A2)*($C$2:$C$60>C2))+1
??? 然后向下填充公式至D60单元格,会返回D列各部门销售人员的销售额排名。
????
??? 2.对D列进行自定义筛选。
??? 选择D2单元格,在“数据”选项卡的“排序和筛选”组中单击“筛选”。单击D2单元格出现的筛选箭头,选择“数字筛选→小于或等于”,在弹出的对话框中“小于或等于”右侧的文本框中输入“5”后确定。
???
??? Excel即可筛选出各部门销售额排名前5位的数据。
???
??? 3.上图中虽列出前5位数据,但没有按销售额从高到低排列。要得到这样的结果,只需以A、D列为主要和次要关键字进行排序即可。方法是:
??? 选择数据区域的某个单元格,在“排序和筛选”组中单击“排序”按钮,弹出“排序”对话框,在“主要关键字”后的下拉列表中选择“销售部门”,单击“添加条件”按钮,增加第二个排序条件,将“次要关键字”设置为“销售额”,“次序”设置为“降序”,单击“确定”。
???
??? 最终的筛选、排序结果如下图。
??? ??
??? 方法二:使用数据透视表
???1. 选择数据区域中的某个单元格,单击“插入”选项卡中的“表格”组中单击“数据透视表→数据透视表”,在弹出的对话框中单击“确定”创建数据透视表。
??? 2.在“数据透视表字段列表”中将三个字段全部选中,Excel会自动将“销售部门”、“销售人员”字段放入行标签区域,将“销售额”放入数值区域。如果是Excel 2003,则分别将三个字段拖入到相应的区域。
??? 3.右击数据透视表中的某个销售人员姓名,在弹出的右键菜单中选择“筛选→前10个”。
???
??? 4.弹出“前10个筛选”对话框,将默认的数字“10”改为“5”。
???
????单击“确定”,Excel将筛选出各“销售部门”销售额前5名的销售人员。
?????
??? 5.按销售额从高到低排序:选择某个销售额,在“数据”选项卡的“排序和筛选”组中单击“Z→A”按钮即可。如果不需要分类汇总,可选择数据透视表后,在“数据透视表工具-选项”选项卡的“布局”组中单击“分类汇总→不显示分类汇总”。
???
??? 如果是Excel 2003,从上述第3步开始可进行如下设置:右击数据透视表中的某个销售人员姓名后选择“字段设置”,弹出“数据透视表字段”对话框,单击“高级”按钮。
???
??? 在“数据透视表高级选项”对话框中的“自动排序选项”下,选择“降序”,在“自动显示前10项”下选择“打开”,将数字“10”改为“5”。
?????
??? 单击两次“确定”后得到最终的分类筛选结果。
???
??? 要取消分类汇总,在上述“数据透视表字段”对话框中,将“分类汇总”设置为“无”即可。
……