本帖最后由 france723 于 2017-6-1 17:15 编辑
这个程序是这样的, 原始数据写入数组cr. 然后进入我标记的Step1,对于每一行数据, 逐个和crr每个数据比对( crr就是你要找的数据 ). 每当满足一个数据一致, n的值就增加一. (对于每一行数据逐个比对, 为了防止重复, 所以br定位比对).
然后进入我标记的Step2, 当n的值等于crr里面元素的个数( 要找的数据全部找到), jh赋值 1.
然后进入我标记的Step3, 当jh的值等于1, 出现的次数写入数组br. (次数累加)
最后Step4, 输出数组.
- Sub AAA()
- Dim br(1 To 2, 1 To 33)
- crr = Range("j10:k10")
- rw = [a11].End(4).Row
- cr = Range("c11:h" & rw)
- For k = 1 To UBound(crr, 2)
- br(2, crr(1, k)) = crr(1, k)
- Next
- For i = 1 To UBound(cr)
- n = 0
- If jh = 1 Then 'step 3
- For m = 1 To UBound(cr, 2)
- br(1, cr(i, m)) = br(1, cr(i, m)) + 1
- Next
- jh = 0
- End If
- For j = 1 To UBound(cr, 2) 'step 1
- If br(2, cr(i, j)) = cr(i, j) Then
- n = n + 1
- End If
- Next
- If n = UBound(crr, 2) Then jh = 1 'step 2
- Next
- Range("j12:ap12").ClearContents
- [j12].Resize(1, 33) = br 'step 4
- End Sub
复制代码
|