今天继续拯救被迫合并单元格的同学们,教大家统计合并单元格内某字符出现的次数。
案例:统计下图 1 中每个单元格内的“、”个数,如下图 2 所示。
解决方案:1. 在 B2 单元格中输入以下公式 --> 下拉复制公式:
=LEN(A2)-LEN(SUBSTITUTE(A2,"、",))
公式释义:
SUBSTITUTE(A2,"、",):将 A2 单元格中的所有“、”替换成什么都没有;相当于将单元格内的所有“、”删除;
LEN(...):统计上述替换后的字符总数;也就是删除所有“、”后的字符数;
LEN(A2)-...:将原单元格内的字符数减去上述字符数,就计算出了“、”的个数。
还可以用下面这种公式。
2. 在 C2 单元格中输入以下公式 --> 下拉复制公式:
=COUNT(0/(MID(A2,ROW($1:$30),1)="、"))
公式释义:
ROW($1:$30):得到一组由 1、2、3、……30 组成的序列;因为内容最多的单元格的总字符数也没有超过 30 个,所以序列计算到 30 足够用了;
MID(A2,...,1):在 A2 单元格中,依次以第 1 到第 30 位作为起始值,提取 1 位字符;也就是说,将 A2 单元格中的每一位字符依次提取出来;
...="、":用等式判断提取出来的每一位是否等于“、”,得到由逻辑值 TRUE 或 FLASE 组成的数组;
0/...:用 0 除以上述逻辑值,结果为 0 或错误值 #DIV/0!;
COUNT(...):计算上述结果中数值,即 0,的个数,也就是统计出“、”的个数了