等級(jí):初學(xué)者
-
積分:0
-
財(cái)富值:0.00
-
身份:普通用戶
統(tǒng)計(jì)字符串中不重復(fù)字符數(shù)量的公式
要統(tǒng)計(jì)字符串中不包括重復(fù)字符的數(shù)量,即字符串中的字符種類數(shù)量,在Excel中可以用下面的一些公式。假如A1單元格中包含字符串“Excel2010”,在B1單元格中輸入公式:
=SUMPRODUCT(--(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),A1)=ROW(INDIRECT("1:"&LEN(A1)))))
公式返回結(jié)果為8,即重復(fù)的字符“0”只計(jì)算了一次。
說明:
1.用MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)返回包含各字符的數(shù)組:{"E";"x";"c";"e";"l";"2";"0";"1";"0"},其中ROW(INDIRECT("1:"&LEN(A1)))返回?cái)?shù)組:{1;2;3;4;5;6;7;8;9}。
2.用FIND函數(shù)返回各字符在字符串中的起始位置:{1;2;3;4;5;6;7;8;7},然后與上面的數(shù)組進(jìn)行比較:{1;2;3;4;5;6;7;8;7}={1;2;3;4;5;6;7;8;9},返回?cái)?shù)組{TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;FALSE},并用雙重否定符“--”返回{1;1;1;1;1;1;1;1;0}.
3.最后用SUMPRODUCT函數(shù)返回結(jié)果。
另外,還可以用下面的兩個(gè)公式:
=SUM(--(FREQUENCY(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),A1),FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),A1))>0))
或:
=COUNT(1/FREQUENCY(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),A1),FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),A1)))
如果不區(qū)分字符串中英文字母的大小寫,將上述公式中的FIND改為SEARCH即可。本例中公式將返回“7”,