Excel,VBA,批量操作,数据提取

2025-04-09 01:39:40
推荐回答(1个)
回答1:

Sub ssss()
    Dim myapp As New Application
    Dim wb As Workbook
    Dim sh As Worksheet
    Dim temp As String
    Dim k As Long
    k = 1
    temp = Dir(ThisWorkbook.Path & "\*.xls")
    myapp.Visible = False
    While temp <> ""
        If temp <> ThisWorkbook.Name Then
            Set wb = myapp.Workbooks.Open(ThisWorkbook.Path & "\" & temp)
            Set sh = wb.Sheets(1)
            With sh.Range("a1").CurrentRegion
                Cells(k, 1).Resize(.Rows.Count, .Columns.Count) = .Value
                k = k + .Rows.Count
            End With
            wb.Close False
        End If
        temp = Dir
    Wend
    myapp.Quit
End Sub