当前位置: 首页 > Excel > Excel常用函数 > ExcelExcel技巧 > Excel中如何应用高级筛选,高级筛选的用法-Excel学习网

Excel中如何应用高级筛选,高级筛选的用法-Excel学习网

发布时间:2020年09月27日 08:32:11 来源: 点击量:444

【摘要】Excel Tables可以在一列中根据两个条件进行过滤。这是在表中搜索许多条件的一种方法。在Excel 2007中,Microsoft添加了强大的Table功能。

Excel Tables可以在一列中根据两个条件进行过滤。这是在表中搜索许多条件的一种方法。

在Excel 2007中,Microsoft添加了强大的Table功能。

表的一项有用功能是能够过滤任意数量的列。每列的过滤器控件使我们可以搜索两个条件。但是,当我使用这些过滤器时,我经常会遇到至少两个问题。

首先,当我在几个不同的列中使用许多过滤器来探索大量数据时,发现自己的点击次数比我真正想做的要多。

其次,我偶尔需要过滤一列中的两个以上条件,而Tables不提供此功能。

所以最近,我终于厌倦了所有的点击。我已经厌倦了两个过滤器的限制。因此,我决定寻找一种更好的方法。

我找到了。

将筛选器列添加到您的Excel表

这个想法很简单:要减少探索表格数据时的所有点击,如果我们可以依靠一列公式(如果该行具有我们要查找的数据,则返回TRUE),则容易得多,否则,则返回FALSE。

但是那列公式应该是什么样的?

在向您展示一种方法之前,让我们快速浏览一下我一直使用的数据中最依赖的数据列。(更准确地说,该列包含“元数据”,通常将其定义为“关于数据的数据”。)

标签列包含描述每个经济数据行内容的类别标签。我用“ |”分隔了每个标签,以便在需要时可以搜索完整的标签。(我没有使用逗号作为分隔符,因为其中一些标记嵌入了逗号,如您在第二行中看到的:

|美国|国家统计局|每月| bls |失业率|美国MSA | mt |密苏拉州|

|美国|国家统计局|每月|美国清算银行|失业率|失业率|县| mt |加勒廷县,mt |

|美国|每月| sa | bls |利率|失业率|状态| mt |

|美国| sa |季度|贝阿|失业|状态|转移| frb地区|福利| frb stl地区|

尽管这些标签描述了来自圣路易斯联邦储备银行的经济数据,但我强烈建议您在创建自己的业务数据的Excel表时使用类似的方法。您可以在总帐数据,产品数据,库存数据等中添加一列标签。如果这样做,在报告和分析表中的数据时,可能会发现查找所需的项目容易得多。

使用单标准搜索公式

这是我创建的第一个公式。这是一个很长的公式,我将其包装为六行,以便您可以更轻松地阅读它:

= AND(

ISERR(SEARCH(“ | state |”,[@ Tags]))-1,

ISERR(SEARCH(“ | msa |”,[@ Tags]))-0,

ISERR(SEARCH(“ county”,[ @Tags]))-0,

ISERR(SEARCH(“ | frb district |”,[@ Tags]))-0

如您所见,此公式由四个单独的搜索组成,并用AND函数包围。这就是它的作用……

该AND如果每个参数具有非零值,函数返回TRUE。(在电子表格中,FALSE的值为零,而TRUE的值为1。)但是,如果任何参数返回零值,则AND返回FALSE。具体而言,在上式中,如果标签包含“ | state |”,不包含“ | msa |”,不包含“ county”且不包含“ || frb district |”,则AND返回TRUE。

如果您以前没有使用过表格公式,那么“ [@Tags]”引用对您来说会很奇怪。Microsoft将其称为“结构化引用”。在公式中,您可以通过使用方括号内的列名称来引用“表”列中的数据。“ @”字符告诉Excel使用与公式所在的行相同的行中的“标签”列中的值。

单一条件搜索公式的工作原理

要查看四个SEARCH参数如何 工作,请看一下上面的第一个SEARCH。

如果SEARCH函数在“标记”列内的行中找到“ | state |”,则ISERR()函数将返回FALSE,其值为零。因此,我们通过减去1来将此FALSE值更改为TRUE。(请记住,Excel将零视为FALSE,而所有其他值均视为TRUE。因此,在这种情况下,-1值的计算结果仍为TRUE。)

另一方面,如果SEARCH函数未找到“ | state |”,则ISERR返回TRUE,其值为1。但是,当我们减去1时,会将其设为零,Excel将其视为FALSE。

现在看第二条SEARCH行。如果SEARCH函数在“标记”列中的行中找到“ | msa |”,则 ISERR函数返回FALSE。因为我们减去了零,所以该FALSE值保持为FALSE,这根本不会改变该值。我本可以完全跳过那个“ -0”部分;但我添加它有两个原因。

首先,通过在公式中的每个SEARCH函数上添加“ -1”或“ -0”,可以很容易地看到需要修改逻辑的位置。因此,例如,如果我想更改公式以选择“县”标签,则只需将“ -0”更改为“ -1”。

第二,老实说,我对TRUE和FALSE之间的许多变化感到有些困惑,尤其是在离开表格一段时间之后。因此,“-1”告诉我是,公式正在寻找“ | state |”。而“ -0”件告诉我,不,该公式不需要其他三个项目。

Excel中如何应用高级筛选,高级筛选的用法-Excel学习网

有关单标准搜索公式的最终说明

上面的过滤器公式中的每个测试都查看同一列中的数据。但是,四个SEARCH函数中的每一个都可以在表的不同列中查找不同的信息。实际上,如果使用下面将要描述的多标准搜索公式,则将主要使用此单条件公式来测试多列数据。

此外,请记住,此公式与任何其他Excel公式一样,即使它使用新方法来引用表中的数据。因此,与其硬编码“ | state |”,“ | msa |”等,不如将这些文本项放在表格上方的单元格中。这样,我可以仅通过更改单元格中的值来更改过滤条件。

另外,当然,我可以用“-$ B $ 1”和“-$ B $ 2”之类的东西替换“ -1”和“ -0”,其中单元格B1和B2可以包含1或0,或者TRUE或FALSE。那将使我仅通过在TRUE和FALSE之间切换,然后通过按Alt + F5刷新表来更改要包含或排除的内容的逻辑。

最后,我将通过告诉您我对该公式不满意的地方来结束本文……

上面公式的所有四个部分都在看同一个单元格。因此,您认为我们可以找到一种方法,使用一个SEARCH函数使用列表中的每个项目搜索一个单元格,然后返回有关其找到的结果的摘要信息。

采取下一步

首先,我最近想出了一种使用SEARCH函数搜索列表中每个项目的方法,我将在如何使用Excel中的SEARCH&SUMPRODUCT函数执行多表搜索中对此进行说明 。

分享到: 编辑:wangmin

就业培训申请领取
您的姓名
您的电话
意向课程
点击领取

环球青藤

官方QQ

扫描上方二维码或点击一键加群,免费领取大礼包,加群暗号:青藤。 一键加群

绑定手机号

应《中华人民共和国网络安全法》加强实名认证机制要求,同时为更加全面的体验产品服务,烦请您绑定手机号.

预约成功

本直播为付费学员的直播课节

请您购买课程后再预约

环球青藤移动课堂APP 直播、听课。职达未来!

安卓版

下载

iPhone版

下载
环球青藤官方微信服务平台

刷题看课 APP下载

免费直播 一键购课

代报名等人工服务

课程咨询 学员服务 公众号

扫描关注微信公众号

APP

扫描下载APP

返回顶部