我浏览了所有统计Excel统计字符出现次

2022/12/17 来源:不详

白癜风的药物 http://m.39.net/baidianfeng/a_4688851.html

我们都知道,在Excel表格中统计字符出现次数简单到小学生都会做。不就是COUNTIF()函数和SUBSTITUTE()函数嘛。

如果百度Excel表格字符出现次数统计,会搜出无数个教程,都会教这两个函数如何应用到字符出现次数的计数上。

然而,我发现,这些教程都是对这两个函数泛泛而谈,举的例子又是那些只适合他们教程的例子。在Excel表格中统计字符出现次数的通用方法方面,它们存在严重的误导Excel新手的问题。

我是不是在危言耸听呢?

我们看下面的例子。

01网上教程对COUNTIF()函数的错误用法

我们首先界定一下,在Excel表格中,一个值是什么意思。搞不懂这个的意思,就会落入网上那些教程不知不觉中埋下的坑中。

在Excel表格中,一个值就是独占一个单元格的。

所以在下表中,右边的表格里每一个字符串都是一个值,左边表格同样如此。但是,同样是这个字符串,在右边表格中,它是一个值,在左边表格中它仅仅是一个字符串而不是一个值。也就是说,除了在单元格中,是出现在列值中(注意我加粗了二字),从至,它都只出现在列中而未出现在列值中。

估计有点绕,或者语法上不严谨,大家仔细看下图,应该明白我说的意思。

也就是说,在左边表格中,前五行都只能找到包含这个字符串,而的值则等于。

网上的教程在讲授用COUNTIF()函数对字符串出现次数计数时,要么没有区分字符串是出现在列中呢还是等于列中的某个值。

所以,当我们用对出现次数计数时,得到的是1,而不是预期的4。

为了把包含要统计的字符串的列也统计到,网上又出现了使用通配符的COUNTIF()进行计数的教程。

照这样的教程,可以将公式设置为,结果如下:

很遗憾,我们得到了数字3,而不是期望的4。

为什么是4?因为在单元格出现了两次,很显然这个通配符版本的COUNTIF公式只读取了第一个而把后面再出现的全部忽略了。

所以,看到没,通配符版本的COUNTIF公式要统计字符串出现在列中的次数时,对列有严格要求——就是要寻找的字符串在该列的每一行只允许出现一次,否则统计结果就不准。

回顾下您看过的关于用COUNTIF()函数进行字符串计数时,是不是要么没提到字符串出现在列和列值的区别,要么没提到要查找的字符串在目标表格的每一行只允许出现一次?

那么,如何用Excel公式统计到字符串出现的正确次数呢?这需要用到SUBSTITUTE()函数。遗憾的是,网上教程对这个函数的用法也是有问题的。

02网上教程对SUBSTITUTE()函数的误用

在Excel表格中,对字符串出现次数进行统计的另一个方法是,用SUBSTITUTE()结合LEN()函数和SUMPRODUCT()函数来实现。

事实上,这个方法是解决这类计数问题的更通用方法,相比较而言,COUNTIF()函数计数限制太多,一不小心就会出错而不知道。所以推荐使用的方法。

网上教程怎么介绍这个方法的呢?

多是介绍如何用这个方法来统计单字符的出现次数。比如如果要统计这个字符出现的次数,可以用,这样我们得到12,正确。

但是我们要统计的是多字符串出现的次数,上面方法行不通。不信可以试试。

我找到一个介绍用这个方法来统计多字符出现次数的教程。

然而按照这种方法统计的结果是错的。

正确的方法是什么?或者说,更通用的公式是什么?是下面这个:

=SUMPRODUCT((LEN(A2:A4)-LEN(SUBSTITUTE(A2:A4,表2[

关键词],))))/LEN(表2[

关键词])

为什么要在单字符公式的基础上除以字符串的长度呢?这是因为,当用SUBSTITUTE()函数替换多字符串时,我们一般都是选择替换为空。这样一来,整个字符串其实被算成了一个字符,计算出的结果就会是实际出现次数的LEN(关键词)倍。

如果觉得绕,那就再解释下。上面引文中的公式其实是更一般的公式。当我们计算一个字符的出现次数时,其实是把后面的省略了,因为一个字符的长度就是1,除数是1的话,得到的商永远就是被除数本身,所以我们直接省略了这个1。

网上的教程几乎都没讲到这一点,比如这个教程,作者也没讲为啥要除以2而不是别的。

03总结

所以,我们在Excel中对字符串出现次数计数时,更一般的办法是用下面这个公式:

=SUMPRODUCT((LEN(绝对引用标识出的要查找的范围)-LEN(SUBSTITUTE(绝对引用标识出的要查找的范围,关键词,))))/LEN(关键词)

而尽量少用COUNTIF()函数,或使用SUBSTITUTE()结合LEN()函数和SUMPRODUCT()函数来对单字符进行计数。

转载请注明:
http://www.3g-city.net/gjyzl/2590.html
  • 上一篇文章:

  • 下一篇文章:
  • 网站首页 版权信息 发布优势 合作伙伴 隐私保护 服务条款 网站地图 网站简介

    温馨提示:本站信息不能作为诊断和医疗依据
    版权所有2014-2024 冀ICP备19027023号-6
    今天是: