您的位置: 首页 > EXCEL技巧 > Excel函数 >

统计字符串中不重复字符数量的公式

时间:2013-12-13 整理:docExcel.net

要统计字符串中不包括重复字符的数量,即字符串中的字符种类数量,在Excel中可以用下面的一些公式。假如A1单元格中包含字符串“Excel2010”,在B1单元格中输入公式:

=SUMPRODUCT(--(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),A1)=ROW(INDIRECT("1:"&LEN(A1)))))

公式返回结果为8,即重复的字符“0”只计算了一次。

说明:

1.用MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)返回包含各字符的数组:{"E";"x";"c";"e";"l";"2";"0";"1";"0"},其中ROW(INDIRECT("1:"&LEN(A1)))返回数组:{1;2;3;4;5;6;7;8;9}。

2.用FIND函数返回各字符在字符串中的起始位置:{1;2;3;4;5;6;7;8;7},然后与上面的数组进行比较:{1;2;3;4;5;6;7;8;7}={1;2;3;4;5;6;7;8;9},返回数组{TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;FALSE},并用双重否定符“--”返回{1;1;1;1;1;1;1;1;0}.

3.最后用SUMPRODUCT函数返回结果。

另外,还可以用下面的两个公式:

=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)))

如果不区分字符串中英文字母的大小写,将上述公式中的FIND改为SEARCH即可。本例中公式将返回“7”,即“E”和“e”只算作一个字符。

用公式提取Excel单元格中的汉字 问题:用公式提取Excel单元格中的汉字
回答:对于一个混杂各种字母、数字及其他字符和汉字的文本字符串,要提取其中的汉字,在Excel中通常可用下面的公式。例如下图A列中的字符串,要在B列提取其中的汉字(或词语)。 如果汉字位于字符串的开头或结尾,用LEFT或RIGHT...
提取字符串中两相邻分隔符之间文本的公式 问题:提取字符串中两相邻分隔符之间文本的公式
回答:有时需要从包含分隔符号的字符串中提取子字符串,例如Excel工作表的某列中包含类似“200-GH11301-11TB5”的文本字符串,该字符串被两个相同的分隔符号“-”分成三部分,且每部分的字符数不固定,现在需要提取其中的第2部分内...
数组公式提取单元格内第一个汉字前的字符串 问题:数组公式提取单元格内第一个汉字前的字符串
回答:有时需要在Excel中提取单元格内文本第一个汉字前的字符串,例如从“MD-T289(XQ01)黑色”中提取“MD-T289(XQ01)”。如果各单元格文本中首个汉字前的字符串长度不等,可用下面的一些数组公式。例如字符串在下图所示的A列单元格中...
统计字符串中不重复字符数量的公式 问题:统计字符串中不重复字符数量的公式
回答:要统计字符串中不包括重复字符的数量,即字符串中的字符种类数量,在Excel中可以用下面的一些公式。假如A1单元格中包含字符串“Excel2010”,在B1单元格中输入公式: =SUMPRODUCT(--(FIND(MID(A1,ROW(INDIRECT( 1: &LEN(A1))),1),A1)=ROW(INDIRE...
如何用Excel从字母数字字符串中提取数字 问题:如何用Excel从字母数字字符串中提取数字
回答: 此办理方案的根基道理是搜索并返回字母数字字符串中的第一个数字,然后只返回其后的数字。 算法 此办理方案包罗建设公式以完成下列任务: 1.将字母数字字符串解析为单独的字符。 2.确定解析后的字符串中是否有数字。 3....
用自定义函数提取单元格内字符串中的数字 问题:用自定义函数提取单元格内字符串中的数字
回答:如果Excel单元格中包含一个混合文本和数字的字符串,要提取其中的数字,通常可以用下面的公式,例如字符串“隆平高科000998”在A1单元格中,在B1中输入数组公式: =MID(A1,MATCH(1,--ISNUMBER(--MID(A1,ROW(INDIRECT( 1: &LEN(A1))),1)),0),COUN...
相关推荐: