
excel表格怎么筛选数据
-
2023年2月17日发(作者:)Excel的数据筛选功能
2009-02-16信息来源:电脑学习网
视力保护色:【大中小】【打印本页】【关闭窗口】
Excel中提供了两种数据的筛选操作,即“自动筛选”和“高级筛选”。如何区分这
两种筛选模式,以便熟练掌握和应用,让我们来看看吧:
自动筛选
“自动筛选”一般用于简单的条件筛选,筛选时将不满足条件的数据暂时隐藏起来,只
显示符合条件的数据。某单位的职工工资表,打开“数据”菜单中“筛选”子菜单中的“自
动筛选”命令,以“基本工资”字段为例,单击其右侧向下的列表按钮,可根据要求筛选
出基本工资为某一指定数额或筛选出基本工资最高(低)的前10个(该数值可调整)记录。
还可以根据条件筛选出基本工资在某一范围内符合条件的记录,“与”、“或”来约束区分
条件。如图2,根据给定条件筛选出基本工资大于等于300且小于350的记录。另外,使用
“自动筛选”还可同时对多个字段进行筛选操作,此时各字段间限制的条件只能是“与”的
关系。如筛选出“基本工资”和“职务工资”都超过380的记录。
高级筛选
“高级筛选”一般用于条件较复杂的筛选操作,其筛选的结果可显示在原数据表格中,
不符合条件的记录被隐藏起来;也可以在新的位置显示筛选结果,不符合的条件的记录同时
保留在数据表中而不会被隐藏起来,这样就更加便于进行数据的比对了。
例如我们要筛选出“基本工资”或“职务工资”超过380且“实发”工资超过700的符
合条件的记录,用“自动筛选”就无能为力了,而“高级筛选”可方便地实现这一操作。将
“基本工资”、“职务工资”和“实发”三字段的字段名称复制到数据表格的右侧(表格中
其他空白位置也可以),所示位置输入条件,条件放在同一行表示“与”的关系,条件不在
同一行表示“或”的关系。即为上述操作在新的位置(B20起始位置)筛选的结果。
两种筛选操作的比较
由此我们不难发现,“自动筛选”一般用于条件简单的筛选操作,符合条件的记录显示
在原来的数据表格中,操作起来比较简单,初学者对“自动筛选”也比较熟悉。若要筛选的
多个条件间是“或”的关系,或需要将筛选的结果在新的位置显示出来那只有用“高级筛选”
来实现了。一般情况下,“自动筛选”能完成的操作用“高级筛选”完全可以实现,但有
的操作则不宜用“高级筛选”,这样反而会使问题更加复杂化了,如筛选最大或最小的前几
项记录。
在实际操作中解决数据筛选这类问题时,只要我们把握了问题的关键,选用简便、正确
的操作方法,问题就能迎刃而解了。
在日常办公应用中,我们经常会遇到将一个表格中各行内容连接起来作为一列形成新表
的情况,Word中没有现成的功能,忽然想起Excel中“选择性粘贴”中的“转置”功能,
但实际操作一下才发现,它只能将表格的行、列位置互换一下,不能达到上述目的。笔者经
过多次实践,终于找到一套可以让表格任意纵、横的方法。
方法主要是借助Word中“文字与表格相互转换”功能与“高级替换”功能的配合使用,
具体步骤如下:
1.将表格转换成文字
选定整个表格后,执行“表格→转换→表格转换成文字”,在弹出的“将表格转换成文
字”对话框中选择默认的文字分隔符“制表符”,然后单击[确定]按钮。此时原表格中的表
格线全部消失,各列内容以空格分隔。
2.将各行内容连接起来,以列的形式出现
(1)选中文字中两列间的空格部分,并从“编辑”菜单中执行“复制”命令,将列间
空格存放在剪贴板中,待稍后替换时使用。
(2)选中刚刚转换好的文字内容部分,执行“编辑→替换”,在弹出的“查找和替换”
对话框中的“查找内容”文本框后单击鼠标,定位好插入点,将步骤1中复制的空格从剪贴
板上剪切出来。
注意:由于此对话框中不支持鼠标右击,也不支持菜单中的“粘贴”操作,所以此处只
能使用“粘贴”命令的快捷键:“Ctrl+V”。
(3)用鼠标将插入点定位在对话框中“替换为”文本框的后边,点击对话框左下角的[高
级]按钮,将对话框下部折叠部分展开,单击[特殊字符]按钮,在弹出的列表中选择最上方
的“段落标记”,此时“替换为”文本框中的内容显示为“^p”。
(4)单击对话框中部的[全部替换]按钮,在出现的“Word已完成对所选内容的搜索,
共替换XX处。是否搜索文档其余部分?”提示信息中点击[否]结束替换操作。
3.去除出现的空白行
再次执行“编辑→替换”,用上述方法,将两个“段落标记”全部替换为一个“段落标
记”(即在“查找内容”后输入“^p^p”,在“替换为”后输入“^p”),为了将全部空白
行都剔除,此时应多次点击对话框中[全部替换]按钮,直至提示“已完成0次替换”,则表
示已将全部空行删除。
4.将文字转换成表格
选定全部文字内容后,执行“表格→转换→文字转换成表格”。在弹出的“将文字转换
成表格”对话框中“文字分隔位置”处选择默认的“段落标记”,然后单击[确定]按钮,
此时一张新表就初步完成了。
5.后期处理
给新表添加必要的项目列、添加标题、格式化,之后就一切OK了!
再引申一下,若是由列表转换成横表,又该如何操作呢?一起动动脑筋吧:)。
用Excel怎样统计出学生成绩各分数段内的人数分布呢?很多文章都推荐使用Count
IF函数,可是每统计一个分数段都要写一条函数,十分麻烦。例如,要在C58:C62内统计
显示C2:C56内小于60分、60至70之间、70至80之间、80至90之间、90至100之间的
分数段内人数分布情况,要输入以下5条公式:
1.在C58内输入公式统计少于60分的人数:=CountIF(C2:C56,\"<60\")
2.在C59内输入公式统计90分至100之间的人数:=CountIF(C2:C56,\">=90\")
3.在C60内输入公式统计80至90之间的人数:=CountIF(C2:C56,\">=80\")-CountIF(C
2:C56,\">=90\"),
4.在C61内输入公式统计70到80之间的人数:=CountIF(C2:C56,\">=70\")-CountIF(C
2:C56,\">=80\"),
5.在C62内输入公式统计60到70之间的人数:=CountIF(C2:C56,\">=60\")-CountIF(C
2:C56,\">=70\")。
如果要把0至10之间、10至20之间、20至30„„90至100之间这么多个分数段都统
计出来,就要写上十条公式了。
其实,Excel已经为我们提供了一个进行频度分析的FreQuency数组函数,它能让我们
用一条数组公式就轻松地统计出各分数段的人数分布。例如,我们要统计出C2:C56区域内
0至100每个分数段内的人数分布:
1.在B58:B68内输入:0、9.9、19.9、„„9.9、99.9、100。
2.用鼠标选择区域C58至C69,在编辑栏内输入“=FreQuency(C2:C56,B58:B69)”。
3.按“Crtl+Shift+Enter”组合键产生数组公式“={FreQuency(C2:C56,B58:B69)}”,
这里要注意“{}”不能手工键入,必须按下“Crtl+Shift+Enter”组合键由系统自动产生。
完成后C58:C69将所示的分数分布情况。
用CountIF函数统计分数段的方法流传很广,但效率并不高,提出这个新方法希望对大
家有所帮助。另外,在Excel的帮助里也有一个用FreQuency函数统计分数段的简单范例,
大家可以参考。
Excel数据筛选的技巧
2008年12月01日00:12文/张剑悦培训杂志已有3773位网友访问本文
对于Office一族来说,最常用也是最困扰他们的工作有两个:一个是在浩如烟海的众多数据中,如何
快速找到和检索出所需的信息;另一个则是如何轻松得到分类汇总的结果和统计报表数据。下面,我们将
向大家介绍用Excel对数据信息进行筛选、检索的一些操作技巧和经验。
日前,在北京召开了第29届奥林匹克运动盛会,来北京参赛旅游的中外宾客络绎不绝,为了更好的了
解北京的特色小吃和各式美食,所以在网络中非常流行一个“吃在北京”的文档。该文档是用Excel制作的,
文档的标题行中从“店名”到“菜系”,从“地址”到“电话”,从“招牌菜”到“人均消费”可谓一应俱全。为了查询
方便,该数据表还设置了“自动筛选”功能,可通过标题右侧的下拉列表来对“餐厅”、“菜系”或“消费价格”
等按照条件进行筛选查看,如图1所示
这种通过下拉列表设置条件的筛选在Excel中被称作“自动筛选”,这种筛选可以将列表中的数据直接当
作条件,也可以通过“自定义”条件的设置进行某个字段“与”、“或”查询,由于自动筛选的应用较为简单,
在此,不再做赘述和讲解。
现在,我们要探讨的是自动筛选的兄弟——高级筛选。虽然自动筛选或高级筛选,在Excel中都可以
起到根据条件查询数据的作用,是数据分析必不可少的工具和手段,但是高级筛选才是最好的数据查询方
式。因为它不仅包含了所有自动筛选的操作,而且还有很多自动筛选望尘莫及的功能,如:多字段复杂条
件的“与”、“或”关系查询;将查询结果复制到其他表;实现条件的“模糊查询”;与“宏”和“窗体控件”结合等
等。
多字段复杂条件的“与”、“或”关系查询并将结果复制到其他数据表
用Excel的“自动筛选”功能来对数据表进行筛选查询,若对多字段设置了筛选条件,那么结果一定是多
字段的条件同时满足,只能做到多字段间条件“与”的查询。在如图2所示的人事表中,若设置了“年龄”的
筛选条件为“>40”,又设置了文化程度为“大学本科”,那么筛选的结果就一定是年龄大于40岁的大学本
科生职工,如图2所示。
下面我们对该人事表设置一个复杂的查询条件,并将查询结果复制到一个新的数据表之中,让大家感受
一下Excel高级筛选功能的强大之处。
查询条件有三个,第1个是查找到“20至30岁之间的研究生”;第2个是查找到“本科学历的编审”;
第3个是查找到“本科学历的副编审”。这3个条件只要满足一个就将它筛选出来。很显然,这是一个多字
段间复杂的“与”、“或”关系查询,这种情况只能使用Execl的高级筛选才能实现,下面就来看看操作过程:
设置筛选条件区
高级筛选的前提是在数据表的空白处设置一个带有标题的条件区域,这个条件区有3个注意要点:
·条件的标题要与数据表的原有标题完全一致;
·多字段间的条件若为“与”关系,则写在一行;
·多字段间的条件若为“或”关系,则写在下一行。
根据这个特点,所以应在数据表旁将条件区域设置完成,如图3所示。
提示:本例要查找的人员有3类,这3类人员是“或”关系,所以将条件写在了3行。每行的字段条件
就是“与”关系,第1行要查找的是年龄在20至30之间的研究生;第2行要查找的是学历为大学本科的
编审;第3行要查找的则是学历为大学本科的副编审。
设置“高级筛选”对话框
高级筛选的条件区创建完成后,就可以进行“高级筛选”的操作了。由于要将筛选结果复制到新的数据表,
所以先要新建一个数据表,并将光标定在该数据表之中;然后选择【数据】菜单【筛选】命令下的【高级
筛选】命令,打开“高级筛选”对话框。
在对话框中要做3个设置:
·“列表区域”是待筛选查询的人事表所有数据区域;
·“条件区域”是刚刚创建的“与”、“或”条件区域;
·“复制到”则是筛选结果所要放入的新建数据表。
设置完成后的“高级筛选”对话框,如图4所示。
查看“高级筛选”结果
“高级筛选”对话框设置完成后,便可单击【确定】按钮来查看筛选的结果了,如图5所示。
在这个结果中,一共有3类人员,一类是年龄在20至30之间的研究生;第2类是学历为大学本科的
编审;第3类则是学历为大学本科的副编审。至此,通过以上3步,我们对这个人事表进行了多字段复杂
条件的“与”、“或”关系查询,并将结果复制到了其他数据表之中。
实现条件的“模糊查询”
高级筛选不仅可以设置多字段复杂条件的“与”、“或”关系查询,而且还可以配合“通配符”实现筛选条件
的“模糊查询”模式。
在“高级筛选”中,通配符主要使用的是键盘的【*】符号。“*”表示任意字符,所以若将“*”使用在高级
筛选的条件中,便可以实现模糊查询的效果。例如在上例人事表中,若想查询“籍贯”为“山东”籍的职员,
也就是在“籍贯”字段中起始文字是“山东”的职员,那么就应将筛选条件区的条件设定成“山东*”。
右侧表数据是按照“模糊查询”的方式筛选出的查询结果,如图6所示。
与“宏”和“窗体控件”结合制作交互效果
Excel的高级筛选操作,事先都会创建条件区,利用这个条件区与窗体控件和宏配合,就可以制作出带
有交互功能的数据查询效果。
所谓交互功能的数据查询,是在创建的条件区旁,用“窗体控件”为数据表添加两个按钮,分别是显示【全
部】按钮和【筛选】按钮。当单击【筛选】按钮后,便可以根据条件区的条件筛选出结果,如图7所示。
当单击【全部】按钮后,便会显示原数据表的所有数据信息,如图8所示。
要想实现这种效果,需要用窗体控件按钮和“宏”或“VBA”配合。可以事先先录制两个宏,一个宏是根据
条件区域进行“高级筛选”,另一个宏则是显示所有数据信息,然后将窗体控件的两个按钮分别指定这两个
宏即可。
当然也可以使用“VBA”的编辑,若使用VBA编程,则“筛选”用的宏代码为:
SubFilterA()
Range(\"A5:I235\").AdvancedFilterAction:=xlFilterInPlace,CriteriaRange:=_
Range(\"k2:o4\"),Unique:=False
EndSub
“全部”显示的宏代码为:
SubShowAll()
OnErrorGoToErrline
lData
Errline:
ExitSub
“高级筛选”是Excel中一种非常有效的数据分析方法和数据查询方式。在Office的大家庭中,还有一
个与Excel非常有关系的软件就是Access数据库。在Access数据库中,单一表查询用的就是“高级筛选”
功能,单从这点就可以佐证,像Excel这种以表为单位存放数据的软件,数据查询最好的方式其实就是“高
级筛选”。Excel的高级筛选在使用上并不复杂,只要把握好条件区的设置,就能查询和检索到符合条件的
数据信息。