|
发表于 2013-7-25 18:52
|
显示全部楼层
本楼为最佳答案
- Private Sub CommandButton1_Click()
- Dim arr, arr1, arr2(1 To 100), i&, j%, k As Byte, l As Byte, m As Byte, d As Object, c
- Set d = CreateObject("scripting.dictionary")
- m = 1
- For k = 6 To [iv10].End(1).Column Step 4
- arr = Range(Cells(10, k), Cells(UsedRange.Rows.Count, k + 3))
- ReDim arr1(1 To 100)
- l = 1
- For j = 1 To 4
- For i = 1 To UBound(arr)
- If arr(i, j) <> "" Then d(arr(i, j)) = d(arr(i, j)) + 1
- Next i
- For Each c In d.keys
- If d(c) > 1 Then arr1(l) = c: l = l + 1
- Next c
- d.RemoveAll
- Next j
- For l = 1 To UBound(arr1)
- If arr1(l) <> "" Then d(arr1(l)) = d(arr1(l)) + 1
- Next l
- For Each c In d.keys
- If d(c) > 1 Then arr2(m) = c: m = m + 1
- Next c
- d.RemoveAll
- Next k
- [a1].Resize(UBound(arr2)) = Application.Transpose(arr2)
- End Sub
复制代码 |
|