|
- Sub main()
- tms = Timer
- arr = Sheet2.Range("c2:h" & Sheet2.[c65536].End(3).Row) '彩票数据数组
- brr = Sheet1.Range("b2:g" & Sheet1.[b65536].End(3).Row) '条件数组
- Dim ar%(5), br%(5)
- ReDim crr(1 To UBound(brr), UBound(brr, 2))
- For i = 1 To UBound(brr)
- For j = 1 To 6: br(j - 1) = brr(i, j): Next
- For k = 1 To UBound(arr)
- For j = 1 To 6: ar(j - 1) = arr(k, j): Next
- p = CompAB(ar, br)
- crr(i, p) = crr(i, p) + 1
- Next
- Next
- [I2].Resize(UBound(crr), UBound(crr, 2)) = crr
- MsgBox Timer - tms & "秒"
- End Sub
- Function CompAB(ar%(), br%()) '返回数组br各数在数组ar中出现的次数
- Dim s%(1 To 33)
- For Each a In ar '数组s以ar中每个数为下标的值设为1
- s(a) = 1
- Next
- For Each b In br '数组s以br中每个数为下标的值相加,即为数组br各数在数组ar中出现的次数
- CompAB = CompAB + s(b)
- Next
- End Function
复制代码 |
|