我们知道统计一个单元格的字数,可以简单使用公式=LEN或者=LENB,那么如何统计不重复的字符个数呢?
前期准备工作(包括相关工具或所使用的原料等)
Excel详细的操作方法或具体步骤
假设我们的单元格A1中,是字符串,例如:
AbfadAty4

我们在单元格B1中输入公式:
=SUMPRODUCT(N(FIND(MID(A1,ROW(1:50),1),A1)=ROW(1:50)))
即可得到结果为8(字符大小写敏感)


不但如此,我们还可以用数组公式,能实现同样的功能
=COUNT(0/(FIND(MID(A1,ROW(1:50),1),A1)=ROW(1:50)))
输完后,记得同时按下CTRL+Shift+Enter

注意:
如果单元格A1中的字符串长度很长,超出50,把上述公式中数字50改为比50更大的数字,或者字符串实际长度即可。

我们也可以用一个稍微长一点的公式,一劳永逸:
=SUMPRODUCT(N(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),A1)=ROW(INDIRECT("1:"&LEN(A1)))))

如果我们忽略字符大小写,那么数组公式需要作改写:
=SUM(--(MATCH(MID(A1,ROW(1:50),1),MID(A1,ROW(1:50),1),0)=ROW(1:50)))-1
输入后,需要同时按下Ctrl+Shift+Enter

如果我们只需要统计不重复的字母数(不区分大小写)呢?
可以使用数组公式,暴力计算:
=SUM(COUNTIF(A1,"*"&CHAR(64+ROW(1:26))&"*"))
输入后,需要同时按下Ctrl+Shift+Enter

那么一个高级的问题来了,如果指定一个另一个字符串,在现有单元格内查找统计次数呢?那么可以参考本人原创的这篇经验:
Excel统计一个单元格内的某字符串的出现次数

- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
