SUM 函数示例:判断单元格是否包含某个内容


概括


要测试单元格是否包含 x、y 或 z,可以使用OR 函数创建逻辑测试,然后使用 IF 函数计算结果。在所示示例中,D5 单元格中的公式为:


=IF(OR(ISNUMBER(SEARCH({"abc","xyz"},B5))),"x","")

单元格 D5 的结果为“x”,因为“jim@abc”包含“abc”。可以根据需要调整 IF 函数的结果。


通用配方


=IF(OR(ISNUMBER(SEARCH({"abc","xyz"},A1))),"x","")

解释


目标是根据单元格中是否包含某个子字符串来执行特定操作。大多数用户首先会想到使用 IF 函数。然而,IF 函数的一个问题是它不支持通配符, 例如“?”和“*”。这意味着我们不能单独使用 IF 函数来检测单元格中可能出现的任何子字符串,例如“abc”或“xyz” 。一种方法(如示例所示)是使用 ISNUMBER、SEARCH 和 OR 函数创建一个逻辑测试,然后使用 IF 函数返回最终结果。另一种方法是使用 COUNTIF 函数和 SUM 函数来创建逻辑测试。以下将解释这两种方法。

或 + 搜索 + ISNUMBER

SEARCH 函数用于在文本字符串中查找指定的子字符串。如果找到子字符串,SEARCH 会返回该子字符串在文本中的位置(以数字形式)。如果未找到子字符串,SEARCH 将返回 #VALUE 错误。例如:


=SEARCH("p","apple") // returns 2
=SEARCH("z","apple") // returns #VALUE!

ISNUMBER 函数。ISNUMBER 对数值返回 TRUE,对其他任何值返回 FALSE:


=ISNUMBER(2) // returns TRUE
=ISNUMBER("a") // returns FALSE

我们可以使用 ISNUMBER 函数将 SEARCH 的结果转换为 TRUE 或 FALSE 值,如下所示:


=ISNUMBER(SEARCH("p","apple")) // returns TRUE
=ISNUMBER(SEARCH("z","apple")) // returns FALSE

如果 SEARCH 函数找到子字符串,则返回其位置(以数字形式),ISNUMBER 函数返回 TRUE。如果 SEARCH 函数找到子字符串,则返回错误,ISNUMBER 函数返回 FALSE。这种方法本身没有问题,但此问题的难点在于我们需要检测两个子字符串,而不是一个。我们可以通过在 OR 函数中使用两次 SEARCH 和 ISNUMBER 函数来实现这一点:


=OR(ISNUMBER(SEARCH("abc",B5)),ISNUMBER(SEARCH("xyz",B5)))

现在,如果其中任何一个表达式返回 TRUE,则 OR 函数将返回 TRUE 并触发 IF 函数。一种简化公式的方法是使用数组常量和单个表达式,如下所示:


=OR(ISNUMBER(SEARCH({"abc","xyz"},B5)))

数组常量是一种可以存储多个值的结构体。它的工作方式类似于 Excel 中的区域,但数组常量中的值是硬编码的。因为我们给 SEARCH 函数提供了两个子字符串,所以它会返回两个结果。ISNUMBER 函数也会返回两个结果给 OR 函数,OR 函数会像之前一样对这些结果进行计算。

注意:搜索功能不区分大小写。如果您需要区分大小写的选项,可以按照此处的说明切换到查找功能。

IF 函数

综上所述,我们可以将上述公式用作 IF 函数中的逻辑测试,如下所示:


=IF(OR(ISNUMBER(SEARCH({"abc","xyz"},B5))),"x","")

这是示例中单元格 D5 中使用的公式。向下复制该公式时,如果电子邮件地址包含“abc”或“xyz”,则返回“x”;否则返回空字符串“""”。您可以根据需要调整 IF 公式以返回任何值。

注意:IF 函数只是在单元格中留下一个“x”作为标记。如果目标是检索所有匹配的单元格或记录,请参阅FILTER 函数。

COUNTIF + SUM

解决此问题的另一种方法是将COUNTIF 函数与 SUM 函数结合使用,如下所示:


=IF(SUM(COUNTIF(B5,{"*abc*","*xyz*"})),"x","")

这个公式的核心是 COUNTIF 函数,如果找不到任何子字符串,则返回零;如果找到至少一个子字符串,则返回一个正数。关键在于,我们为 COUNTIF 函数提供了多个子字符串作为条件,这些子字符串以“数组常量”的形式传入。因此,COUNTIF 函数会返回一个计数数组,每个条件对应一个计数。由于 COUNTIF 函数返回的是一个数组,我们需要使用 SUM 函数对数组中的所有元素求和。求和结果作为logical_test参数传递给 IF 函数。任何非零值都会被判定为 TRUE。

请注意,我们还使用了星号 (*) 作为通配符,表示子字符串两侧的零个或多个字符。这使得 COUNTIF 函数能够统计文本中任意位置的子字符串数量(即,它提供了“包含”功能)。

笔记

  1. 如果您要测试多个值,可以使用区域而不是数组常量 来提供要检查的值。在 Excel 2019 及更早版本中,使用区域会将公式转换为数组公式,必须使用 Ctrl + Shift + Enter 组合键输入。在当前版本的 Excel 中,无需特殊操作。
  2. COUNTIF 函数的  range参数只能接受范围您不能将来自其他公式的数组传递给 COUNTIF 函数。这在使用动态数组公式时可能会造成问题,因为在动态数组公式中,将数组从一个公式传递到另一个公式更为常见。OR + SEARCH + ISNUMBER 公式则没有此限制。


互动

查看数
14

为您推荐的类似文章

本文围绕快速上手Excel展开,提出以练代学的核心方法,指出通过一两周的实操练习可掌握主要功能,遇问题可借助搜索引擎解决。同时规划了五阶段学习路径:第一阶段熟悉基础环境,明确工作簿、单元格等概念,掌握数据填充与常用快捷键;第二阶段学习数据整理,包括行列调整、查找替换、排序筛选与分列功能;第三阶段聚焦函数应用,理解公式规则,掌握SUM、VLOOKUP等核心函数及引用类型;第四阶段学习可视化与分析,涵盖一键生成图表、条件格式与数据透视表;第五阶段汇总了文件操作、编辑输入等多类高效快捷键。

微软2026年为Microsoft 365带来的Excel函数更新,堪称办公效率革命,将自动化、动态化门槛从编程降至写公式。文章针对传统Excel办公的诸多痛点,介绍了10个新函数的实用场景:XLOOKUP可替代传统查找公式,解决反向查找、错误值等问题;XMATCH能逆向搜索定位最后一条记录;FILTER可生成自动刷新的动态报表;UNIQUE+SORT一键完成数据去重排序;SORTBY定义永恒排序规则;TEXTSPLIT无需分列向导即可拆解文本;SEQUENCE告别手动填充序列;RANDARRAY可快速生成模拟数据。这些新函数将大幅提升办公效率,让传统Excel用户面临淘汰。

本文聚焦职场必备的WPS表格函数公式,介绍了WPS表格因轻量免费、与Excel高度兼容,成为国内办公常用工具的优势。针对新手仅会基础求和公式的痛点,系统梳理了多类实用函数:统计类含SUM、COUNT等基础与高级统计函数;逻辑类有IF、AND等条件判断函数;文本类含LEFT、CONCATENATE等处理工具;日期类含TODAY、DATEDIF等计算函数;还有VLOOKUP等查找引用类函数,并搭配实例演示。同时解答了WPS与Excel函数差异、学习方法等常见问题,助力不同水平职场人提升办公效率。

本文针对多数Excel/WPS用户仅用10%功能、常因数据处理加班的痛点,结合2025年Excel和WPS最新版本,解析能解决95%工作数据问题的十佳函数公式,助力效率提升300%。文中依次讲解了基础高频的SUM/IF/ROUND三人组的进阶用法与新增IFS函数、可终结VLOOKUP的XLOOKUP查询函数优势及低版本替代方案、SUMIFS/COUNTIFS的多条件精准统计技巧、可实现动态数据处理的FILTER函数应用、能避免手动排序弊端的SORT/SORTBY自动排序系统,全为可直接上手的干货,帮用户告别加班。

针对职场人常因Excel数据处理熬夜、被重复整理工作折磨的痛点,本文结合2026年最新办公场景,整理升级了涵盖六大核心类别的40个Excel函数公式大全。其中详细拆解了求和计算、查找匹配、逻辑判断等类别的多个实用函数,每个公式均搭配具体使用场景、操作技巧及原理解析,如SUMIF单条件求和统计销售员业绩、INDEX+MATCH组合实现反向查找等,帮助用户建立系统的函数思维,而非单纯记忆语法,可高效解决职场中90%的Excel数据难题,彻底改变表格处理方式。

为您推荐的相关资源

多品类市场信息调研框架 | undefined

企业销售利润核算表 | undefined

存货计价审计工作底稿模板 | undefined

客户销售额月榜:排名与数据一览 | undefined

12城空调月度销售数据统计报表 | undefined