|
- Sub 统计()
- rmax = [a65536].End(3).Row
- hs = [h2]
- r = rmax - hs + 1 '第一数据区的起始行
- Range("J11:Iv65536").ClearContents
- r1 = 10 '显示行上一行
- xts = [h5] '相同数
- arr = Range("a" & r & ":h" & rmax) '第一数据区
- brr = Range("a11:h" & r - 1) '第二数据区
- Set d = CreateObject("scripting.dictionary")
- For ia = 1 To UBound(arr)
- d.RemoveAll
- For j = 3 To 8 '第一区各数进字典
- d(arr(ia, j)) = ""
- Next
-
- For ib = 1 To UBound(brr)
- n = 0 '相同数
- For j = 3 To 8
- x = brr(ib, j) '第二区各数是否在字典内
- If d.exists(x) Then n = n + 1
- If n > xts Then Exit For
- Next
- If n = xts Then '相同数符合要求,显示结果
- k = k + 1 '第二区有k行符合要求
- If k = 1 Then
- kk = kk + 1
- Cells(r1 + kk, 10).Resize(1, 8) = Application.Index(arr, ia)
- End If
- Cells(r1 + kk, 10 + k * 8).Resize(1, 8) = Application.Index(brr, ib)
- End If
- Next
- k = 0
- Next
- End Sub
复制代码 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|