|
发表于 2016-2-16 22:24
|
显示全部楼层
本楼为最佳答案
- Sub Macro1()
- On Error Resume Next
- Dim arr, brr, d, i&
- Set d = CreateObject("scripting.dictionary")
- arr = Range("a2:a" & Range("a65536").End(xlUp).Row)
- ReDim brr(1 To UBound(arr), 1 To 2)
- For i = 1 To UBound(arr)
- d(arr(i, 1)) = d(arr(i, 1)) + 1
- Next
- For i = 1 To d.Count
- x = Application.Large(d.keys, i)
- n = n + d(x): pm = n - d(x) + 1
- brr(pm, 1) = x
- brr(pm, 2) = d(x)
- Next
- qj = InputBox("请输入求平均分区间(如3-5)")
- y = Split(qj, "-")
- For i = y(0) To y(1)
- m = m + brr(i, 1) * brr(i, 2)
- s = s + brr(i, 2)
- Next
- MsgBox m / s
- End Sub
复制代码 |
评分
-
查看全部评分
|