|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
你不懂不代表所有人的别人都不懂.
不懂就虚拟请教,专心学习,我无知我骄傲很可耻!
- Sub 提取()
- Dim arr, brr(1 To 10000, 1 To 4), Rng As Range
- arr = Range("A3:A" & [A1048576].End(3).Row): n = 1
- myfiles = Application.GetOpenFilename(filefilter:=("Excel Files (*.xls*),*.xls*"), MultiSelect:=False)
- If TypeName(myfiles) = "Boolean" Then Exit Sub
- Workbooks.Open myfiles
- For Each sht In ActiveWorkbook.Sheets
- For i = 1 To UBound(arr)
- Set Rng = sht.Columns(1).Find(what:=arr(i, 1), lookat:=xlWhole)
- If Not Rng Is Nothing Then
- nR = Rng.Row
- Do
- Debug.Print Rng.Row
- For j = 1 To 4
- brr(n, j) = sht.Cells(Rng.Row, j).Value
- Next j
- n = n + 1
- Set Rng = sht.Columns(1).FindNext(Rng)
- Loop While Not Rng Is Nothing And Rng.Row <> nR
- Set Rng = Nothing
- End If
- Next i
- Next
- ActiveWorkbook.Close (False)
- Range("C3:F1048576").Clear
- [c3].Resize(n - 1, 4) = brr
- End Sub
复制代码
|
|