Option Explicit
Sub TEST2()
Dim ar, br, i&, j&, r&, wks As Worksheet, strFind$
Application.ScreenUpdating = False
With [A1].CurrentRegion
.Offset(1).Clear
ar = .Resize(10 ^ 4).Value
r = 1
End With
strFind = [H1].Value
For Each wks In Worksheets
If InStr(",A,B,C,F,", "," & wks.Name & ",") Then
br = wks.[A1].CurrentRegion.Value
For i = 3 To UBound(br)
If br(i, 1) = strFind Then
r = r + 1
ar(r, 1) = br(1, 2)
ar(r, 2) = br(1, 3)
For j = 1 To UBound(br, 2)
ar(r, j + 2) = br(i, j)
Next j
End If
Next i
End If
Next
[A1].Resize(r, UBound(ar, 2)) = ar
Application.ScreenUpdating = True
Beep
End Sub
|