[英]Copy data from one workbook to another workbook last row
下面是我的代碼,用於將數據從一個工作簿復制到另一個工作簿,但這給了我錯誤:
下標超出范圍
同樣,此代碼也不會將數據復制到目標表的最后一行。
Sub CopyDataNEW()
Dim sBook_t As Workbook
Dim sBook_s As Workbook
Dim wbPath_t As String
Dim wbPath_s As String
wbPath_t = "F:\TESt\DB_BA.xlsx"
wbPath_s = "F:\TESt\PPC_BA.xlsm"
Set sBook_s = Workbooks.Open(wbPath_s)
Set sBook_t = Workbooks.Open(wbPath_t)
sBook_s.Sheets("cstdata").Range("A2:EK2").Copy Destination:=sBook_t.Sheets("cstdatalist").Range("A2")
End Sub
編輯你的代碼,應該工作:
Sub CopyDataNEW()
Dim sBook_t As Workbook
Dim sBook_s As Workbook
Dim wbPath_t As String
Dim wbPath_s As String
Dim lRow2 as Long
'make sure file destination is correct, file name is correct, and file extension is correct here
'you will get subscript out of range error here if these are not accurate
wbPath_t = "F:\TESt\DB_BA.xlsx"
wbPath_s = "F:\TESt\PPC_BA.xlsm"
Set sBook_s = Workbooks.Open(wbPath_s)
Set sBook_t = Workbooks.Open(wbPath_t)
'Find last row in paste workbook
lRow2 = sBook_t.Sheets("cstdatalist").Range("A" & sBook_t.Sheets("cstdatalist").Rows.Count).End(xlUp).Row + 1
'copy and paste
sBook_s.Sheets("cstdata").Range("A2:EK2").Copy
sBook_t.Sheets("cstdatalist").Range("A" & lRow2).Paste
'clear clip board
Application.CutCopyMode = False
'clear objects
Set sBook_s = Nothing
Set sBook_t = Nothing
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.