- Sub Macro1()
- Dim arr, brr, crr, i&, ii&, j%, n&
- Set d = CreateObject("scripting.dictionary")
- Sheets("H").Activate
- arr = Range("a3:a" & Range("a65536").End(xlUp).Row)
- For j = 2 To 8 Step 3
- brr = Sheets("" & Cells(1, j)).Range("a2").CurrentRegion
- For i = 3 To UBound(brr)
- d(brr(i, 1)) = i
- Next
- ReDim crr(1 To UBound(arr), 1 To 3)
- For ii = 1 To UBound(arr)
- If d.exists(arr(ii, 1)) Then
- n = d(arr(ii, 1))
- crr(ii, 1) = brr(n, 2)
- crr(ii, 2) = brr(n, 8)
- crr(ii, 3) = brr(n, 10)
- End If
- Next
- Cells(3, j).Resize(UBound(crr), 3) = crr
- d.RemoveAll
- Next
- End Sub
复制代码 |