是否可以在 Excel 中将 AND 和 OR 组合在字符串搜索中?

Is it possible in Excel to combine AND and OR in string searches?

提问人:user21827733 提问时间:5/5/2023 更新时间:5/7/2023 访问量:48

问:

我有一个相当大的数据集(数万行),其中包含一列自由文本数据单元格。我想过滤数据集,以便仅返回自由文本单元格中具有特定单词的行,但是我想同时使用 AND 和 OR 作为我的参数。这可行吗?

因此,我想过滤,例如,对于 绿色和头发或 蓝色和头发或 紫色和头发

我知道如何在字符串中只使用 OR(绿色或蓝色或紫色 OR 头发)来做到这一点,但这将返回只有绿色、蓝色或紫色的行,并且没有引用头发也在同一单元格中。我可以使用“ ”,例如“绿头发”,但对绿色和头发的引用可能不在那个确切的短语中,这样会删除相关行,例如,它不会在自由文本单元格中保留带有“女孩的头发是绿色”行的单元格。希望这是有道理的!我怀疑可能是 Excel 没有这样做,但希望被证明是错误的!

我对这个有点难倒,所以还没有尝试太多。我曾想过尝试使用高级过滤器,但我认为这不起作用,因为我正在尝试为其中一些标准做一个 AND

Excel 过滤器 逻辑

评论

3赞 BigBen 5/5/2023
是的,这是可能的,您可以使用和/在文本中搜索。ISNUMBERFINDSEARCH
0赞 kevin 5/6/2023
若要筛选数据集,请在数据末尾添加一个帮助程序列,并使用上面建议的公式来确定是包含还是排除该行。然后,可以在帮助程序列上应用筛选器。

答:

0赞 Black cat 5/7/2023 #1

是的。以下示例演示如何使用高级筛选器获取所需的筛选数据。

线 专栏A
1
2 =AND(OR(ISERR(SEARCH(“green”,A12))<>TRUE,ISERR(SEARCH(“yellow”,A12))<>TRUE,ISERR(SEARCH(“blue”,A12))<>TRUE),ISERR(SEARCH(“hair”,A12))<>TRUE)
...
14 项目
15 绿头发
16 她的头发是黄色的
17 黄色
18
19 蓝色头发
20 蓝色巴士
21 黄色巴士
22 小红车
23 長髮
24
...

在“高级筛选器”中,选择“就地筛选”并设置列表范围:= $A$14:$A$24 和筛选范围:= $A$1:$A$2

结果

线 专栏A
14 项目
15 绿头发
16 她的头发是黄色的
19 蓝色头发