|
Sub 查询()
Dim arr, brr, crr, ar, s5$, x&, c&, m&, ran$
Application.ScreenUpdating = False
arr = Sheet2.Range("a1").CurrentRegion
ReDim brr(1 To UBound(arr), 1 To 5)
With Sheets("sheet1")
s5 = .[d2]
End With
For x = 2 To UBound(arr)
If arr(x, 5) = s5 Then
ar = Array(0, 1, 2, 3, 4, 5) '这里面是要查询的列,加个零是应为数组的的下标是零开始起,这样写法可以跳列查询
m = m + 1
For y = 1 To 5 ' 这是根据上面的数组的的个数从零开始计算,第七个的数字是8 也就是第8列
brr(m, y) = arr(x, ar(y))
Next
End If
Next
With Sheets("sheet1")
If m > 0 Then
.Range("E2:I65536").Clear
.Range("e" & .Range("e65536").End(xlUp).Row + 1).Resize(m, 5) = brr
End If
End With
Application.ScreenUpdating = True
End Sub
|
|