Note: The other languages of the website are Google-translated. Back to English

如果单元格在另一列中包含特定文本,则求和

如果单元格在另一列中包含特定或部分文本,本教程将向您展示如何对值求和。 以下面的数据范围为例,要获取包含文本“T-Shirt”的产品总数,SUMIF 函数和 SUMPRODUCT 函数都可以在 Excel 中处理此任务。


如果单元格包含具有 SUMIF 函数的特定或部分文本,则求和值

如果单元格在另一列中包含特定文本,要对值求和,您可以使用带有通配符 (*) 的 SUMIF 函数,通用语法为:

带有硬编码文本的通用公式:

=SUMIF(range,"*text*",sum_range)
  • range:要使用标准评估的数据范围;
  • *text*:要基于的值求和的条件。 在这里,* 通配符用于查找任意数量的字符,匹配包含特定文本的所有项目,将文本放在两个 * 字符之间。 (请注意,您必须将文本和通配符括在双引号中。)
  • sum_range:具有要求和的匹配数值的单元格范围。

带单元格引用的通用公式:

=SUMIF(range,"*"&cell&"*",sum_range)
  • range:要使用标准评估的数据范围;
  • "*"&cell&"*":要基于的值求和的条件;
    • *: 查找任意数量字符的通配符。
    • 细胞:单元格包含要查找的特定文本。
    • &:此连接运算符 (&) 用于连接带有星号的单元格引用。
  • sum_range:具有要求和的匹配数值的单元格范围。

了解该功能的基本操作后,请使用以下任一您需要的公式,然后按 输入 获得结果的关键:

=SUMIF($A$2:$A$12,"*T-shirt*",$B$2:$B$12)                     (Type the criteria manually)
=SUMIF($A$2:$A$12,"*"&D2&"*",$B$2:$B$12)                 
 (Use a cell reference)

备注:此 SUMIF 函数不区分大小写。


如果单元格包含具有 SUMPRODUCT 函数的特定或部分文本,则求和值

SUMPRODUCT 函数还可以帮助您在不使用任何通配符的情况下完成这项工作。 在这里,您应该将 ISNUMBER 和 SEARCH 函数包装在 SUMPRODUCT 函数中,通用语法是:

=SUMPRODUCT(sum_range *(ISNUMBER(SEARCH(criteria,range))))
  • sum_range:要求和的具有匹配数值的单元格范围;
  • criteria:要基于的值求和的条件。 它可以是您定义的单元格引用或特定文本;
  • range:要使用标准评估的数据范围;

请使用以下任一公式进入空白单元格,然后按 输入 返回结果的键:

=SUMPRODUCT($B$2:$B$12*(ISNUMBER(SEARCH("T-Shirt",$A$2:$A$12))))          (Type the criteria manually)
=SUMPRODUCT($B$2:$B$12*(ISNUMBER(SEARCH(D2,$A$2:$A$12))))                   
(Use a cell reference)


这个公式的解释:

=SUMPRODUCT($B$2:$B$12*(ISNUMBER(SEARCH("T-Shirt",$A$2:$A$12))))

  • 搜索(“T 恤”,$2:$12):SEARCH 函数从数据范围 A2:A12 中返回特定文本“T-Shirt”的位置,因此,您将得到这样的数组:{5;#VALUE!;#VALUE!;7;#VALUE! ;7;#VALUE!;#VALUE!;#VALUE!;#VALUE!;7}。
  • ISNUMBER(SEARCH("T-Shirt",$A$2:$A$12))= ISNUMBER({5;#VALUE!;#VALUE!;7;#VALUE!;7;#VALUE!;#VALUE!;#VALUE!;#VALUE!;7}):这个 ISNUMBER 函数用于测试数值,并返回一个新数组:{TRUE;FALSE;FALSE;TRUE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;TRUE}。
  • $B$2:$B$12*(ISNUMBER(SEARCH("T-Shirt",$A$2:$A$12)))= {347;428;398;430;228;379;412;461;316;420;449}*{TRUE;FALSE;FALSE;TRUE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;TRUE}:为了将这两个数组相乘,数学运算将 TRUE 和 FALSE 值强制为 1 和 0。 因此,两个数组的乘法将是这样的:{347;428;398;430;228;379;412;461;316;420;449}*{1;0;0;1;0;1; 0;0;0;0;1}={347;0;0;430;0;379;0;0;0;0;449}。
  • SUMPRODUCT($B$2:$B$12*(ISNUMBER(SEARCH("T-Shirt",$A$2:$A$12)))) =SUMPRODUCT({347;0;0;430;0;379;0;0;0;0;449}):最后,SUMPRODUCT 函数将数组中的所有值相加得到结果:1605。

使用的相对功能:

  • SUMIF:
  • SUMIF 函数可以帮助根据一个标准对单元格求和。
  • SUMPRODUCT:
  • SUMPRODUCT函数可用于将两个或多个列或数组相乘,然后获得乘积之和。
  • 编号:
  • Excel ISNUMBER 函数在单元格包含数字时返回 TRUE,否则返回 FALSE。
  • 搜索:
  • SEARCH函数可以帮助您从给定的文本字符串中找到特定字符或子字符串的位置

更多文章:

  • Sum If 以特定文本或字符开头或结尾
  • 如果相应的单元格以特定值开头或结尾,要对值求和,您可以应用带有通配符 (*) 的 SUMIF 函数来实现它。 本文将详细介绍如何使用该公式。
  • 对最小或底部 N 值求和
  • 在 Excel 中,我们很容易使用 SUM 函数对一系列单元格进行求和。 有时,您可能需要对数据范围内的最小或底部 3、5 或 n 个数字求和,如下图所示。 在这种情况下,SUMPRODUCT 和 SMALL 函数可以帮助您在 Excel 中解决这个问题。
  • 基于标准的最小或底部 N 值求和
  • 在之前的教程中,我们讨论了如何对数据范围内的最小 n 个值求和。 在本文中,我们将执行进一步的高级操作 - 根据 Excel 中的一个或多个条件对最低的 n 值求和。

最佳办公效率工具

Kutools for Excel-帮助您从人群中脱颖而出

您想快速,完美地完成日常工作吗? Kutools for Excel具有300项强大的高级功能(合并工作簿,按颜色求和,拆分单元格内容,转换日期等),并为您节省80%的时间。

  • 专为1500个工作方案而设计,可帮助您解决80%的Excel问题。
  • 每天减少成千上万的键盘和鼠标点击,减轻您疲倦的眼睛和手部的疲劳。
  • 在3分钟内成为一名Excel专家。 不再需要记住任何痛苦的公式和VBA代码。
  • 30天无限制免费试用。 60天退款保证。 免费升级和支持2年。
Excel功能区(已安装Kutools for Excel)

Office选项卡-在Microsoft Office(包括Excel)中启用选项卡式阅读和编辑

  • 一秒钟即可在数十个打开的文档之间切换!
  • 每天为您减少数百次鼠标单击,告别鼠标手。
  • 查看和编辑多个文档时,可将您的工作效率提高50%。
  • 像Chrome,Firefox和新的Internet Explorer一样,为Office(包括Excel)带来高效选项卡。
Excel的屏幕截图(已安装Office选项卡)
按评论排序
注释 (0)
还没有评分。 成为第一位评论!
这里还没有评论
留下你的意见
以访客身份发帖
×
评价此帖子:
0   产品特性
建议地点