簡體   English   中英

如何將數據從工作簿 1 的工作表 1 復制到工作簿 2 的工作表 2?

[英]How to copy data from sheet1 of workbook1 to sheet 2 of Workbook2?

我需要從數據復制Sheet1Workbook1Sheet2Workbook2 我需要將工作表 1 的數據從A1復制到AE (LastRow) 並將整個復制的數據粘貼到Workbook2Sheet2Q1

這是我的代碼:

Set wbkA = Workbooks.Open(Filename:="D:\Excel\Workbook1.xlsx")

     For Each oSheet In wbkA.Sheets

        If oSheet.Name = "Sheet1" Then
           Set NewWorksheetA = wbkA.Worksheets(oSheet.Name)
        End If

    Next oSheet
Set wbkB = Workbooks.Open(Filename:="D:\Excel\Workbook2.xlsx")

     For Each oSheet In wbkB.Sheets

        If oSheet.Name = "Sheet2" Then
           Set NewWorksheetB = wbkB.Worksheets(oSheet.Name)
        End If

    Next oSheet
''''''''''''''''''''''''''''''''''''''''''''''''''''''' for Loop for row and Column Starts here to compare the data
If Not NewWorksheetA Is Nothing Then

''''''''''''''''''''''''''''''''''''''''''''''''''''''' Getting Last Column index from current Worbook to Write the UpdateStatus
LastRow = NewWorksheetA.Cells(NewWorksheetA.Rows.Count, 2).End(xlUp).Row
'MsgBox "Last Row Number:" & LastRow
LastColumn = NewWorksheetA.Cells(8, NewWorksheetA.Columns.Count).End(xlToLeft).Column
'MsgBox "Last Column Number:" & LastColumn

Workbooks("D:\Excel\Workbook1.xlsx").Worksheets("Sheet1").Range("A1:AE" & LastRow).Copy _
Workbooks("D:\Excel\Workbook2.xlsx").Worksheets("Sheet2").Range("Q1")

End If

我收到以下錯誤

Run Time Error 9: Subscript out of range.

我想使用用於工作簿和工作表名稱的變量

替換此代碼:

Workbooks("D:\Excel\Workbook1.xlsx").Worksheets("Sheet1").Range("A1:AE" & LastRow).Copy _
Workbooks("D:\Excel\Workbook2.xlsx").Worksheets("Sheet2").Range("Q1")

有了這個:

NewWorksheetA.Range("A1:AE" & LastRow).Copy
NewWorksheetB.Range("Q1").PasteSpecial xlPasteAll
Application.CutCopyMode = False

希望我的回答有幫助。 :)

暫無
暫無

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

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