|
发表于 2017-4-18 17:24
|
显示全部楼层
本楼为最佳答案
- Option Explicit
- Sub test()
- Dim arrSrc, arrRst()
- Dim lrow&
- Dim iCnt%, iCol%
- arrSrc = Worksheets("统计").Range("a1").CurrentRegion.Value
- For lrow = 1 To UBound(arrSrc)
- If arrSrc(lrow, 2) >= Range("e1") And arrSrc(lrow, 3) <= Range("f1") And arrSrc(lrow, 4) = Range("g1") Then
- iCnt = iCnt + 1
- ReDim Preserve arrRst(1 To UBound(arrSrc, 2), 1 To iCnt)
- For iCol = 1 To UBound(arrSrc, 2)
- arrRst(iCol, iCnt) = arrSrc(lrow, iCol)
- Next
- End If
- Next
- On Error Resume Next
- If Err.Number <> 0 Then
- MsgBox "不存在该时间段查询数据", 1 + 16, "警告"
- Exit Sub
- Else
- Range("a2").Resize(iCnt, UBound(arrSrc, 2)) = Application.Transpose(arrRst)
- End If
- End Sub
复制代码 |
|