+ -
当前位置:首页 → 问答吧 → 不重复计数的数组公式因为数据量太大死了,请教更好的办法(有附件)

不重复计数的数组公式因为数据量太大死了,请教更好的办法(有附件)

时间:2011-08-06

来源:互联网

请教:带条件 不重复计数,用了这个数组公式,但是因为数据量太大,死了,如果不用透视表,请高手指点是否有更好的公式和办法解决在G列,求B列不重复计数的结果!
数组公式:
G2=SUM(($A$2:$A$34862=E2)*(1/COUNTIF($B$2:$B34862,$B$2:$B$34862)))

附件

不重复计数的数组公式因为数据量太大死了,请教更好的办法.rar(355.3 KB)

2011-8-6 00:05, 下载次数: 7

(2003版) 不重复计数的数组公式因为数据量太大死了,请教更好的办法.rar(195.6 KB)

2011-8-6 00:05, 下载次数: 17

作者: kw868   发布时间: 2011-08-06

模拟个结果,我看得不是很明白
这么大的数据,应该去VBA版块求助

作者: mourintong   发布时间: 2011-08-06

用数据透视表吧..

作者: w83365040371   发布时间: 2011-08-06

VBA就很快。参考一下。
复制内容到剪贴板
代码:
Sub 按钮5_单击()
Dim brr() As String
arr = Range("a1").CurrentRegion
Set d = CreateObject("scripting.dictionary")
ReDim brr(1 To UBound(arr), 1 To 2)
For a = 2 To UBound(arr)
    If Not d.exists(arr(a, 2)) Then
        n = n + 1
        d(arr(a, 2)) = n
        brr(n, 1) = arr(a, 2)
        brr(n, 2) = 1
    Else
        brr(d(arr(a, 2)), 2) = d(arr(a, 2)) + 1
    End If
Next
[h2].Resize(n, 2) = brr
End Sub

作者: suwenkai   发布时间: 2011-08-06