按关键字筛选很容易,几乎人人都会,排除关键字筛选会吗?
案例 1:排除某个关键字筛选从下图 1 的数据表中筛选出 B 列不包含“牛肉”的所有行。
效果如下图 2 所示。


1. 点击“品名”列的下拉箭头 --> 选择“文本筛选”-->“不包含”

2. 在弹出的对话框中输入“牛肉”--> 点击“确定”

B 列中所有包含“牛肉”的行都隐藏起来了。

还是这个表,筛选出 B 列不包含“牛肉”且不以“开心”开头的所有行。
效果如下图所示。

1. 点击“品名”列的箭头 --> 选择“文本筛选”-->“自定义筛选”

2. 在弹出的对话框中选择“不包含”--> 输入“牛肉”--> 选择“与(A)”--> 选择“开头不是”--> 输入“开心”--> 点击“确定”


如果要取消筛选结果,只需点开箭头后选择“从“品名”中清除筛选器”。

使用“高级选项”功能筛选案例 2 的需求。

1. 在任意空白区域构建红框内的条件区域:
两个列的标题都必须与 B 列的标题完全一致;
在相同行,不同列中分别输入“<>*牛肉*”和“<>*花生*”
<> 表示不等于,* 是通配符。

2. 选择任务栏的“数据”-->“筛选”

3. 在弹出的对话框中按以下方式设置 --> 点击“确定”:
选择“将筛选结果复制到其他位置”
列标区域:选择左侧的数据表
条件区域:选择刚才构建的 E1:F2 区域
复制到:选择目标区域的第一个单元格


仍是这个需求,用公式筛选。
解决方案 4:1. 在 E2 单元格中输入以下公式 --> 回车:
=FILTER(A2:C48,ISERROR(FIND("牛肉",B2:B48))*ISERROR(FIND("花生",B2:B48)))


公式释义:
ISERROR(FIND("牛肉",B2:B48)):在 B2:B48 区域中查找关键字“牛肉”,找到则返回一个数字,代表关键字在字符串中的位置,找不到则返回错误值;用 iserror 函数判断结果是否为错误值,是则结果为 true,反之结果为 false;
ISERROR(FIND("花生",B2:B48)):与上述公式一样,只是改成了查找“花生”;
用 * 将上述两个公式相连,表示“与”条件,即同时满足才成立;
FILTER(A2:C48,...):从 A2:C48 区域中筛选出同时符合上述两个条件的行