很多情况下,使用Excel需要统计某个活动的参与人数,比如“张三+李四+赵五”统计出来的人数是3个人,如果只有几行的话可以人工统计,但是数据一多就很麻烦,本文将使用LEN和SUBSTITUTE函数进行快速处理。
如下图展示:
思路分析
- 如上图可以看出,一个+号就对应有两个参与人员,只要计算出有多少个+号后再+1就可以求出参与人数。
- 如何求出+号个数,本文选择用LEN将单元格最原始的长度计算出来,再用SUBSTITUTE函数将+号替换成空,再用最原始的长度减去掉+号后的长度就可以得出+号有多少个
思路概述
- 计算原始长度及去除+号够的长度
- 两个长度相减求出人数
- 利用IF函数优化
1.计算单元格原始的长度
使用len函数求出单元格初始的长度
=LEN(A2)
A2替换成你需要的单元格
2.将+号替换为空并计算长度
2.1使用SUBSTITUTE替换+
SUBSTITUTE函数介绍:
- Text 不可省略参数。为需要替换其中字符的文本,或对含有文本的单元格的引用。
- Old_text 不可省略参数。为需要替换的旧文本。
- New_text 不可省略参数,但有默认值空。用于替换 old_text 的文本。
- Instance_num 为一数值,用来指定以 new_text 替换第几次出现的 old_text。如果指定了 instance_num,则只有满足要求的 old_text 被替换;如果缺省则将用 new_text 替换 TEXT 中出现的所有 old_text。
根据函数例子,第一个参数输入我们要统计的单元格A2,第二个参数输入我们要替换的字符,我们输入”+”,第三个参数我们输入两个双引号””替换为空,””号里面没有字符,空格也没有
SUBSTITUTE(A2,"+","")
这样我们就得到了去掉+号后的字
2.2计算替换完成后的字符长度
接着继续用len求出去掉+后的长度
=LEN(SUBSTITUTE(A2,"+",""))
3.两个长度相减求出人数
用原来的长度-替换后的长度
=LEN(A2)-LEN(SUBSTITUTE(A2,"+",""))
其中第一个LEN(A2)是原始长度(第1步),第二个LEN是替换+为空后的长度(第2.2步)
根据思路分析中的《一个+号就对应有两个参与人员,只要计算出有多少个+号后再+1就可以求出参与人数》,我们还需要在最后面+1
=LEN(A2)-LEN(SUBSTITUTE(A2,"+",""))+1
参与人数中第一个是最后没有+1的,第二个是最后+1了,不+1结果就会少一个人,所以必须加1
4.利用IF函数优化
由上图可见,最后结果+1的时候,当参与成员为空时,参与人数还是会为1,这会导致如果很多空白单元格都会出现参与人数为1的情况,所以需要加一个IF函数判断
4.1使用IF优化逻辑
=IF(A2="",0,LEN(A2)-LEN(SUBSTITUTE(A2,"+",""))+1)
当单元格为空时,我们直接输出0,否则再用前面所说的方法求人数
© 版权声明
文章版权归作者所有,未经允许请勿转载。
如果错误请联系884684993#qq.com (#替换为@)
如果错误请联系884684993#qq.com (#替换为@)
THE END
暂无评论内容