|
- Sub test()
- Dim r%, i%
- Dim arr, brr(1 To 1000, 1 To 49)
- Dim wb As Workbook
- Dim ws As Worksheet
- Dim mypath$, myname$
- Application.ScreenUpdating = False
- Application.DisplayAlerts = False
- vs = [{2,2;2,4;2,6;2,8;3,2;3,5;4,3;5,3;5,7;6,3}]
- mypath = ThisWorkbook.Path & ""
- myname = Dir(mypath & "*.xlsx")
- Do While myname <> ""
- If myname <> ThisWorkbook.Name Then
- Set wb = GetObject(mypath & myname)
- With wb
- With .Worksheets("sheet1")
- arr = .Range("a1:h18")
- m = m + 1
- For k = 1 To UBound(vs)
- brr(m, k) = arr(vs(k, 1), vs(k, 2))
- Next
- n = 11
- For i = 10 To UBound(arr)
- If Len(arr(i, 1)) <> 0 Then
- brr(m, n) = arr(i, 1)
- brr(m, n + 1) = arr(i, 2)
- brr(m, n + 2) = arr(i, 3)
- brr(m, n + 3) = arr(i, 4)
- brr(m, n + 4) = arr(i, 6)
- brr(m, n + 5) = arr(i, 7)
- brr(m, n + 6) = arr(i, 8)
- n = n + 7
- End If
- Next
- End With
- .Close False
- End With
- End If
- myname = Dir
- Loop
- With Worksheets("sheet1")
- .UsedRange.Offset(1, 0).Clear
- .Columns(8).NumberFormatLocal = "@"
- .Range("a2").Resize(m, UBound(brr, 2)) = brr
- End With
- Application.ScreenUpdating = True
- MsgBox "数据提取完毕!"
-
- End Sub
复制代码 |
|