You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在文本部分重叠时精准统计匹配项(年龄课程统计场景)

解决方案:精准统计各年龄段适配课程数量

核心思路

要精准匹配5 y/o而不误匹配15 y/o,关键是确保目标年龄段作为独立的文本单元被识别,同时保留同时适配多个年龄段的课程(比如同时包含5 y/o和15 y/o的课程要被计入两个统计)。

方案1:使用SUMPRODUCT配合SEARCH(推荐,适配多数文本分隔场景)

假设统计单元格(如B2)要计算A2单元格中5 y/o对应的课程数量,使用以下公式:

=SUMPRODUCT(--(ISNUMBER(SEARCH(" " & A2 & " ", " " & 'data sheet'!$B$2:$B & " "))), --('data sheet'!$A$2:$A <> ""))
  • 逻辑:给目标年龄段和每个单元格的前后都添加空格,确保5 y/o是独立短语(15 y/o会变成15 y/o,与5 y/o完全不匹配)
  • --用于将布尔值转换为数字(1/0),SUMPRODUCT对符合条件的行求和
  • 第二个--('data sheet'!$A$2:$A <> "")用于排除课程为空的行

方案2:优化COUNTIFS通配符匹配(仅适用于固定分隔符场景)

如果适配年龄段用逗号+空格分隔(如5 y/o, 15 y/o),可使用以下公式:

=COUNTIFS('data sheet'!$A$2:$A, "<>", 'data sheet'!$B$2:$B, "*" & ", " & A2 & "*", 'data sheet'!$B$2:$B, "*" & A2 & ", *") + COUNTIFS('data sheet'!$A$2:$A, "<>", 'data sheet'!$B$2:$B, A2)
  • 逻辑:分别匹配5 y/o在文本开头、中间、结尾的三种情况,避免被15 y/o包含
  • 局限性:仅适配固定分隔符的场景,通用性不如SUMPRODUCT方案

方案3:辅助列预处理(适合高频统计场景)

若课程数据量较大且需多次统计,可在数据工作表新增辅助列(如C列),用以下公式标记是否包含目标年龄段:

=ISNUMBER(SEARCH(" " & $A2 & " ", " " & $B2 & " "))

之后直接用COUNTIF统计辅助列中TRUE的数量即可,提升统计效率。


内容的提问来源于stack exchange,提问作者Nic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 00:29:51