答: 提供3种方法
- 利用Excel常规筛选功能
- 利用Excel高级筛选功能
- 利用VBA编程
原始示例数据图:
例一:(单列多条件)要求筛选出姓名为”梁盼烟”和”李雁卉”的记录。
- 使用常规筛选方法:
选择表格中任意单元格,执行”数据”-“筛选“,选择”梁盼烟”,接着重复操作,在查找栏输入”李雁卉”,注意勾选”将当前所选内容添加到筛选器”。确定后就筛选出这2个人的记录。
- 使用高级筛选方法:
高级筛选需要设定筛选条件,并放置在别处,避开数据源。如下图:
选择表格中任意单元格,执行”数据”-“排序和筛选“-“高级筛选”,按如下设定条件:
按确定后得到同样结果:
- 使用VBA方法:
Sub Demo()
Range(“A1:E9”).AutoFilter Field:=1, Criteria1:=Array(“梁盼烟”, “李雁卉”), Operator:=xlFilterValues
End Sub
运行结果如下图:
例二:(多列条件)要求筛选出性别为”女”,奖金数大于200的记录行。
- 使用常规筛选方法:
选择表格中任意单元格,执行”数据”-“筛选“,先在性别下拉框选择”女”,然后在奖金列下拉选择”大于”,如下图:
填上200后确定。
得到如下结果:
- 使用高级筛选方法:
使用条件公式,条件区域的首行必须为空或者是与数据区域标题行不同的标题字段。
,如图G1:G2单元格,里面含有公式:
=AND(性别=”女”,奖金>200)
选择表格中任意单元格,执行”数据”-“排序和筛选“-“高级筛选”,按如下设定条件:
确定后,得到同样结果。
- 使用VBA方法:
这里提供2中代码供参考:
Sub Demo2()
With Range(“$A$1:$E$9”)
.AutoFilter Field:=3, Criteria1:=”女”
.AutoFilter Field:=5, Criteria1:=”>200″, Operator:=xlAnd
End With
End Sub
—————
Sub Demo3()
Dim rngData As Range
Dim rngCriteria As Range
Set rngData = Range(“A1:E9”)
Set rngCriteria = Range(“G1:G2”)
rngData.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=rngCriteria, Unique:=False
End Sub
运行其中一个就会得到同样结果,如下图:
方法如下:
首先,下表中是一个初一年级的成绩汇总信息表,可以看到学生班级,姓名,以及各科成绩。我们要做的是迅速根据要求和成绩排序,筛选出需要的信息。
如果要求按语文成绩从高到低,排序。我们可以选择数据选项卡下面的排序功能,主要关键字,选择语文成绩,然后选择降序排列。这样excel表就会将成绩按照语文成绩由高到低排序。
如果既要显示语文成绩的前三名,又同时要总成绩的前三名,怎么办呢?这就涉及到多条件筛选。很简单。依然是数据,排序选项卡,选择添加条件选项,增加条件下拉菜单,总成绩- 降序排列。点击确定。
这样语文成绩和总成绩同时位列前三名的学生信息就显示出来了。如红框显示
如果想要只看某一个班级的信息,也可以使用Excel的筛选功能,轻松实现,比如我们需要看初一1班的学生信息。就可以选择数据,筛选,下拉菜单,只勾选初一1班。
这样屏幕上就只显示初一1班的成绩信息,其他的数据就自动隐藏了。
如果需要将excel转换成pdf文件的话可以使用迅捷pdf在线转换器进行操作哦。
本文来自投稿,不代表天一生活立场,如若转载,请注明出处:http://tiyigo.com/it/27249.html