有时为了方便查看、打印或统计,只需要显示符合条件的行,这时就可以使用筛选功能。Excel提供了自动筛选和高级筛选这两个方便实用的功能。
1.自动筛选
Excel2010的筛选功能比2003版增强了不少,不但添加了根据颜色筛选的功能,还增加了搜索筛选器。
一般情况下,要筛选数据可点击数据表格中的任一单元格,然后在【数据】选项卡上的“排序和筛选”组中,单击“筛选”按钮(见图3-12)。此方法是比较偷懒而快捷的,但是如果表格有空行或空列,Excel默认的筛选区域就会出错,此时可以先选定要筛选的单元格区域,然后再点击“筛选”按钮。
执行筛选操作后,一般情况下我们通过单击列标题字段旁边的下拉箭头,在弹出的列表中选择满足筛选条件的项目,以筛选出需要的记录。
当只需要筛选其中一个项目时,除了采用先将“全选”前的勾去掉,再勾选要筛选的项目外,我们还可以采用更快捷的方式:在工作表中,右键单击包含要作为筛选依据的值、颜色、字体颜色的单元格,在弹出的菜单中单击“筛选”,然后再根据需要选择相应的功能,如图3-13所示。
此外,我们还可通过点击“自动筛选”按钮来按所选单元格的值进行筛选,但功能区无此按钮,需要手动添加。添加方法如下:点击【文件】菜单→选项→快速访问工具栏→在“从下列位置选择命令”下方的下拉列表中选择“不在功能区中的命令”→拖动滚动条至底部→选择“自动筛选”→单击“添加”按钮,将其添加到右侧区域中→点击“确定”退出(如图3-14所示)。下次使用时直接点击快速访问工具栏的“自动筛选”按钮即可。
Excel除了直接勾选已有值进行筛选外,还可以使用条件筛选:点击各列字段旁的筛选按钮,Excel会根据列字段数据的类别(文本、日期、数字以及颜色等),列出相应的筛选条件选项,然后点击相应的选项进入自定义筛选对话框,如图3-15所示。
另外,还可使用自定义筛选功能来进行多条件筛选,不详述。
筛选技巧:
(1)如果要筛选字符串长度为N的文本,可在文本筛选器里输入N个“?”。比如输入“???”则可将长度为3个字符的文本筛选出来。
(2)如果某列既有文本又有数字,要筛选出文本行,则可在自定义筛选设置“等于*”;如图3-15所示。如果要筛选数字,则可在自定义筛选设置“不等于*”。
(3)筛选器值列表最多可以达到10000条(Excel2003版是1000条)。如果数据的唯一值超出此范围,只会显示前一万个唯一值,同时会在筛选器底部提示“未显示所有项目”。如果出现显示不全的情况,可采用变通方案解决:手工将前面的行隐藏或使用创建组的功能将前面的行组合在一起,并将之隐藏,这样筛选器的列表不会包含被隐藏的行的值。
(4)如果表格存在多行标题,点击自动筛选时,Excel默认的字段行可能不正确,比如示例文件“表3-4 自动筛选”,如果选中表格中的任一单元格,点击自动筛选,会将第一行(表格标题)作为筛选标志,如图3-16所示。如果选定A3:M23单元格区域,点击自动筛选,会以第3行(季度所在行)为筛选标志。遇到此种情况时,可选择第4行整行,再点击“自动筛选”按钮。
2.高级筛选
有时我们要设置比较复杂的筛选条件,比如要筛选A列与B列不相等的记录,这时就可使用高级筛选,如图3-17所示。高级筛选主要有以下用途:
➣筛选出不重复记录(Excel2003用此功能剔除重复项,实例请参见第二章第一节中“快速删除重复值、重复记录”的相关内容)。
➣可设置较复杂的条件且可引用单元格区域的条件。
➣将筛选结果复制到其他位置。将筛选所得的记录复制到其他位置时,可以指定要复制的列。
下面以示例文件“表3-5 高级筛选”为例重点介绍如何使用条件区域进行高级筛选。高级筛选的知识要点如下:
(1)条件区域由待筛选列的列标签和条件组成,与数据区域之间至少留出一个空白行。
如图3-18中A1:A3单元格区域、C1:G2单元格区域均为高级筛选条件,条件区域与下面的数据区域分隔了至少一个空行。
(2)条件区域同行不同列表示“与”的关系,不同行表示“或”的关系。
如果要筛选四川办事处和贵州办事处的记录,则条件设置为图3-18中A1:A3单元格区域;要筛选出西部大区合同数量大于1且小于10的记录则条件设置为C1:G2单元格区域。
(3)可以将公式的计算结果作为高级筛选的条件使用。此种情况下,有几点需要特别注意(以图3-18的I1:I2单元格区域的高级筛选条件为例)。
1)公式的计算结果必须计算为TRUE或FALSE。如图3-18中的I2单元格计算结果为FALSE。
2)不能将列标签作为条件标签,请将条件标签保留为空,或者为不同于列标签的其他文字。如I1单元格不能为“项目3”。
3)用于创建条件的公式必须使用相对引用来引用第一行数据中的对应单元格。如I2单元格公式中的G7。
4)公式中的所有其他引用必须是绝对引用。如I2单元格公式中的$G$7:$G$199。下面举例说明。
假设要筛选A6:G199区域中“项目3”大于平均值的记录,筛选结果复制到I6:L6单元格以下的区域。筛选后的记录只保留如I6:L6单元格区域所示的那些字段。具体操作如下。
Step1:打开示例文件“表3-5 高级筛选”,在I1单元格输入不是G列列标签的文字(即不能为“项目3”),在I2单元格输入公式:=G7>AVERAGE($G$7:$G$199)。
Step2:点击数据选项卡的“排序和筛选”组的“高级”按钮,打开高级筛选对话框,分别选择“列表区域”“条件区域”以及“复制到”的目标区域,如图3-19所示。然后点击“确定”,即可筛选出“项目3”中大于平均值的记录,且筛选后的记录只列示了“日期”“办事处名称”“合同数量”“项目3”等字段(见图3-20)。如果“复制到”单元格区域只选择了一个单元格,则会将原记录的所有字段都列示出来。