奔牛网>office>Excel应用>>EXCEL统计某个字符在某个单元格区域出现次数的办法(countif或SUMPRODUCT)
2017年06月07日

EXCEL统计某个字符在某个单元格区域出现次数的办法(countif或SUMPRODUCT)

在EXCEL的办公过程中,有时候我们会需要用到查询某个词在某个区域或者某个行某个列出现的次数,这里主要要用到COUNTIF,如果是要求某个字符或者词语在某个单元格出现的次数,则看另外一篇文章:https://www.bnxb.com/excel/26974.html

这里介绍的是EXCEL统计某个字符在某个单元格区域出现次数的办法(用countif或SUMPRODUCT)

原始数据区域为A1:A5,每个单元格中包含不同或相同的文本,要根据需求求某个字符或关键字在各单元格文本中出现的次数总和。


首先,求“北京”出现的次数(整个单元格内容等于“北京”)。我们输入公式:
=COUNTIF(A1:A5,"北京")
结果返回1,因为源数据中只有A1单元格整个文本内容是“北京”。


然后,求A1:A5文本中包含“北京”这个关键词的单元格数量。我们输入公式:
=COUNTIF(A1:A5,"*北京*")
结果返回2,因为A1和A3都包含“北京”这个关键词。


最后,求A1:A5个单元格文本中“京”字出现的总次数。我们输入公式:
=SUMPRODUCT((LEN(A1:A5)-LEN(SUBSTITUTE(A1:A5,"京",""))))
结果返回3,因为A1,A3和A4这三个单元格都包含“京”字。如果一个单元格中包含两个“京”字也是会被统计出来的。


下面具体解释一下第4步中的公式用法。
首先看一下SUBSTITUTE()函数。SUBSTITUTE()函数语法是这样的:SUBSTITUTE(源数据,要替换的内容,替换的结果)。比如:SUBSTITUTE(A1,"京","")意思是把A1中的所有“京”字都替换成空。


LEN()函数返回一个文本的长度,比如说LEN(A1)就返回A1的单元格内容是几个字符。


LEN(SUBSTITUTE(A1,"京",""))返回的结果是A1单元格文本将“京”字都替换成空以后的文本长度。


A1单元格原字符长度减去把“京”字替换成空的文本长度,结果就是“京”字在A1单元格文本中出现的总次数。


最后,用SUMPRODUCT函数将A1:A5中各自出现的“京”字次数加和就得到了“京”字在原始A1:A5中出现的总次数。
顶(0)
踩(0)
最新评论