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

Excel中统计文本段落内关键词出现次数:COUNTIF函数失效求助

解决多页文本中关键词出现次数统计的问题

我来帮你搞定这个统计需求——你用COUNTIF(A:A,F:F)没得到正确结果,核心问题在于COUNTIF只能统计包含关键词的单元格数量,没法统计单个单元格内关键词重复出现的次数,而且直接跨列引用的参数用法也不符合函数要求。下面给你一套精准解决的方案:

前提假设

先明确数据结构:

  • A列(或跨多个工作表的A列)存储所有页面的文本内容(比如Page1到Page8的内容依次放在A1到A8,或者每个Page对应一个独立工作表的A列)
  • F列存储需要统计的关键词:F1=Service 1,F2=Service 2,F3=Service 3

正确公式(单工作表场景)

在G1单元格(对应F1的统计结果)输入以下公式,然后下拉到G3即可得到目标结果:

=SUMPRODUCT((LEN(A:A)-LEN(SUBSTITUTE(A:A,F1,"")))/LEN(F1))

公式原理拆解

  • SUBSTITUTE(A:A,F1,""):将A列所有单元格中的Service 1替换为空字符串
  • LEN(A:A)-LEN(SUBSTITUTE(...)):计算替换前后的字符数差值,这个差值就是所有单元格中Service 1出现的总字符长度
  • 除以LEN(F1)(关键词本身的长度):把总字符长度转换成关键词的出现次数
  • SUMPRODUCT:自动对整个列的计算结果求和,无需手动按数组公式的组合键

跨多工作表场景(Page1到Page8是独立工作表)

如果你的文本分散在Page1到Page8这8个独立工作表中,把公式改成跨表引用即可:

=SUMPRODUCT((LEN('Page1:Page8'!A:A)-LEN(SUBSTITUTE('Page1:Page8'!A:A,F1,"")))/LEN(F1))

验证你的示例数据

代入你的文本内容后:

  • Service 1:在Page2、Page5各出现1次,公式返回2次
  • Service 2:在Page2、Page6、Page8各出现1次,公式返回3次
  • Service 3:无匹配内容,公式返回0次
    完全符合你的期望结果。

额外注意事项

  • 大小写区分:SUBSTITUTE函数默认区分大小写,如果需要忽略大小写统计,把A列和关键词都转换成统一大小写即可,示例:
    =SUMPRODUCT((LEN(A:A)-LEN(SUBSTITUTE(UPPER(A:A),UPPER(F1),"")))/LEN(F1))
    
  • 单元格内重复计数:公式天然支持统计同一单元格内关键词多次出现的情况(比如单元格内容是Service 1 Service 1,会被计为2次)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 08:32:55