EXCEL问题 统计一列数据出现的次数 相同的只算一次

假设数据在A列吧 在B列写个公式 公式要求:统计的区间可以随意改变 改变的方法越简单越好 谢谢了 新人没分 抱歉

EXCEL2003的用这公式,区域设定为A1:A1000,请根据实际需要修改:

=SUM(IF(A1:A1000<>"",1/COUNTIF(A1:A1000,A1:A1000)))


EXCEL 2007及以上版本用这公式:

=SUM(IF(A:A<>"",1/COUNTIF(A:A,A:A)))


以上都是数组公式:

追问

和1L回答遇到的问题一样 不好意思 请看一下

追答

如不想直接修改公式中的单元格区域,那么只好把区域放在B1与B2中,只要在B1和B2中输入开始行号和结束行号就行了。


=SUM(IF(INDIRECT("A"&B1&":A"&B2)<>"",1/COUNTIF(INDIRECT("A"&B1&":A"&B2),INDIRECT("A"&B1&":A"&B2))))


数组公式,输入完成后不要直接回车,要按三键  CTRL+SHIFT+回车  结束。


温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-02-19
=INDIRECT("A1:A"&LOOKUP(2,1/(A:A<>""),ROW(A:A)))

该引用等效于从A1到A列最后有数据的行,数据增加,区间自动扩大。另外你是问一列数据有几种吧?
第2个回答  2014-02-19
=SUMPRODUCT(1/COUNTIF(A1:A1000,A1:A1000))追问

这个公式没错 我也知道 我问的不全 在补充一下 公式要求可以把空格计算在内 像这个公式1-1000的区间 如果数据从50行开始-100行结束 这个公式就要改到50-100 太麻烦