没找到简单方法,我的方法公式有点长。抱歉,不过能用。
可以用countif函数,也可以用透视表。已经知道一列中有多少种不同的数值可以用函数:=countif(数值所在区域,"单个不同的数值"(可以是单元格引用,单元格引用时无需双引号。);如果不知道不同的数值类别,可以用高级筛选,如果你用的是2007以上版本,还可以在“数据‘选项卡下利用“删除重复项”得到。数据透视表更简单,拖拉几个字段就能得到。
B2公式:
=MAX(COUNT(IF(MATCH(INDIRECT("A"&MAX(IF($A1:A$2=A2,ROW(1:$2)))):A2,INDIRECT("A"&MAX(IF($A1:A$2=A2,ROW(1:$2)))):A2,)=ROW(INDIRECT("1:"&ROW()+1-MAX(IF($A1:A$2=A2,ROW(1:$2))))),ROW(INDIRECT("A"&MAX(IF($A1:A$2=A2,ROW(1:$2)))):A2)))-1,0)
ctrl+shift+回车下拉
这个不重复的范围是一个动态的,所有公式不可能太简单
B3=IF(COUNTIF(A$1:A2,A3),IF(A3=A2,0,COUNT(0/FREQUENCY(SUBTOTAL(9,OFFSET(A$1,ROW(INDIRECT(MAX(IF(A$1:A2=A3,ROW($1:2),0))&":"&ROW()-2)),,)),SUBTOTAL(9,OFFSET(A$1,ROW(INDIRECT(MAX(IF(A$1:A2=A3,ROW($1:2),0))&":"&ROW()-2)),,))))),"")
同时按Ctrl+Shift+Enter三键输入数组公式,下拉
写代码可以处理