簡體   English   中英

如何使用VBA將多個Excel工作表合並為一個Excel工作表

[英]How to combine multiple Excel sheet into one Excel sheet using VBA

我有多張excel表。 使用VBA,我想將它們組合成一個特定的工作表。 例如,將Sheet1,Sheet4,Sheet5合並到一個工作表中,並將Sheet2,Sheet3,Sheet6合並到另一個工作表中。 基本上,工作表名稱需要在組合時進行硬編碼。

修改以下代碼,然后嘗試以下操作:

Option Explicit

Sub test()

    Dim ws As Worksheet, ws145 As Worksheet, ws236 As Worksheet
    Dim Lastrow As Long

    'Let as assume that data appears in sheet 1
    With ThisWorkbook

        'Set the results sheets
        Set ws145 = .Worksheets("Sheet7")
        Set ws236 = .Worksheets("Sheet8")

        'Loop sheets
        For Each ws In .Worksheets
            'Check sheet name
            If ws.Name = "Sheet1" Or ws.Name = "Sheet4" Or ws.Name = "Sheet5" Then
                Lastrow = ws.cells(ws.Rows.Count, "A").End(xlUp).Row
                Lastrow1 = ws145.cells(ws145.Rows.Count, "A").End(xlUp).Row
                'Copy Column A from row 1 to Lastrow
                ws.Range("A1:A" & Lastrow).Copy ws145.Range("A" & Lastrow1 + 1)
            ElseIf ws.Name = "Sheet2" Or ws.Name = "Sheet3" Or ws.Name = "Sheet6" Then
                Lastrow = ws.cells(ws.Rows.Count, "A").End(xlUp).Row
                Lastrow1 = ws236.cells(ws236.Rows.Count, "A").End(xlUp).Row
                'Copy Column A from row 1 to Lastrow
                ws.Range("A1:A" & Lastrow).Copy ws236.Range("A" & Lastrow1 + 1)
            End If

        Next ws

    End With

End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM