Excel公式:检查单元格是否包含多个值之一,但排除其他值
假设有两个值列表,您要检查单元格B3是否包含范围E3:E5中的一个值,但是同时,它不包含范围F3:F4中的任何值,如下所示。 本教程将提供一个公式,以在Excel中快速处理此任务并解释该公式的参数。
通用公式:
=(SUMPRODUCT(--ISNUMBER(SEARCH(include,text)))>0) *(SUMPRODUCT(--ISNUMBER(SEARCH(exclude,text)))=0) |
参数
Text: the text string you want to check. |
Include: the values you want to check if argument text contains. |
Exclude: the values you want to check if argument text does not contain. |
返回值:
该公式返回1或0。当单元格包含需要包含的值之一,并且不包含任何需要排除的值时,它返回1或返回0。此公式1和0的处理方式类似于逻辑值真假。
这个公式如何运作
假设您要检查单元格B3是否包含范围E3:E5中的值之一,但同时排除范围F3:F4中的值,请使用以下公式
=(SUMPRODUCT(--ISNUMBER(SEARCH($E$3:$E$5,B3)))>0)*(SUMPRODUCT(--ISNUMBER(SEARCH($F$3:$F$4,B3)))=0) |
新闻 输入 键以获取检查结果。
说明
部分1: (SUMPRODUCT(--ISNUMBER(SEARCH($E$3:$E$5,B3)))>0) 检查单元格是否包含E3:E5中的值
搜索 函数:SEARCH函数返回文本字符串中另一个字符的第一个字符的位置,如果SEARCH函数找到匹配的文本,则返回相对位置,否则返回#VALUE! 错误。 例如,这里的公式 SEARCH($E$3:$E$5,B3) 将在单元格B3中搜索范围E5:E3的每个值,并返回每个文本字符串在单元格B3中的位置。 它将返回一个数组结果,如下所示: {1; 7; 12}.
ISNUMBER函数:当单元格为数字时,ISNUMBER函数返回TRUE。 所以 ISNUMBER(SEARCH($E$3:$E$5,B3)) 当SEARCH函数找到3个数字时,将返回数组结果为{true,true,true}。
--ISNUMBER(SEARCH($E$3:$E$5,B3)) 将TRUE值转换为1,并将FALSE值转换为0,因此此公式将数组结果更改为 {1; 1; 1}.
SUMPRODUCT 函数:用于将范围或数组的总和加倍,并返回乘积之和。 的 SUMPRODUCT(--ISNUMBER(SEARCH($E$3:$E$5,B3))) 返回1 + 1 + 1 = 3。
最后比较左公式 SUMPRODUCT(--ISNUMBER(SEARCH($E$3:$E$5,B3))) 和0,只要左公式的结果大于0,结果将为TRUE,否则将返回FALSE。 在这里,它返回TRUE。
部分2: (SUMPRODUCT(--ISNUMBER(SEARCH($F$3:$F$4,B3)))=0) 检查单元格是否不包含F3:F4中的值
其计算公式 搜索($ F $ 3:$ F $ 4,B3) 将在单元格B3中搜索范围E5:E3中的每个值,并返回每个文本字符串在单元格B3中的位置。 它将返回一个数组结果,如下所示: {#VALUE!;#VALUE!}.
ISNUMBER(SEARCH($F$3:$F$4,B3)) 将返回数组结果为 {false; false} 因为搜索功能找到0号。
--ISNUMBER(SEARCH($F$3:$F$4,B3)) 将TRUE值转换为1,并将FALSE值转换为0,因此此公式将数组结果更改为 {0; 0}.
SUMPRODUCT 函数:用于将范围或数组的总和加倍,并返回乘积之和。 的 SUMPRODUCT(--ISNUMBER(SEARCH($F$3:$F$4,B3))) 返回0 + 0 = 0。
最后比较左公式 SUMPRODUCT(--ISNUMBER(SEARCH($F$3:$F$4,B3))) 和0,只要左公式的结果等于0,结果将返回TRUE,否则将返回FALSE。 在这里,它返回TRUE。
第3部分:多个两个公式
=(SUMPRODUCT(--ISNUMBER(SEARCH($E$3:$E$5,B3)))>0)*(SUMPRODUCT(--ISNUMBER(SEARCH($F$3:$F$4,B3)))=0)
=TRUE*TRUE
=1
像逻辑值TRUE和FALSE一样处理该公式1和0。
示例文件
相对公式
- 检查单元格是否包含特定文本
若要检查单元格是否包含范围A中的某些文本但不包含范围B中的文本,可以使用将Excel中的COUNT,SEARCH和AND函数组合在一起的数组公式 - 检查单元格是否包含许多东西之一
本教程提供了一个用于检查单元格是否包含Excel中多个值之一的公式,并说明了公式中的参数以及公式的工作方式。 - 检查单元格是否包含其中之一
假设在Excel中,E列中有一个值列表,您想检查B列中的单元格是否包含E列中的所有值,并返回TRUE或FALSE。 - 检查单元格是否包含数字
有时,您可能需要检查单元格是否包含数字字符。 本教程提供了一个公式,如果单元格包含数字,则将返回TRUE,如果单元格不包含数字,则将返回FALSE。
最佳办公效率工具
Kutools for Excel-帮助您从人群中脱颖而出
您想快速,完美地完成日常工作吗? Kutools for Excel具有300项强大的高级功能(合并工作簿,按颜色求和,拆分单元格内容,转换日期等),并为您节省80%的时间。
- 专为1500个工作方案而设计,可帮助您解决80%的Excel问题。
- 每天减少成千上万的键盘和鼠标点击,减轻您疲倦的眼睛和手部的疲劳。
- 在3分钟内成为一名Excel专家。 不再需要记住任何痛苦的公式和VBA代码。
- 30天无限制免费试用。 60天退款保证。 免费升级和支持2年。

Office选项卡-在Microsoft Office(包括Excel)中启用选项卡式阅读和编辑
- 一秒钟即可在数十个打开的文档之间切换!
- 每天为您减少数百次鼠标单击,告别鼠标手。
- 查看和编辑多个文档时,可将您的工作效率提高50%。
- 像Chrome,Firefox和新的Internet Explorer一样,为Office(包括Excel)带来高效选项卡。
