Excel宏数据从一个工作簿传输到另一个工作簿

时间:2018-05-29 15:29:27

标签: excel-vba transfer vba excel

您好我创建了一个程序,可以自动从网站上抓取数据并将其粘贴/格式化为Excel工作表。但是我想将这些数据转移到另一个excel Workbook(已经存在的那个)。下面的宏将数据传输到另一个excel工作簿,但它会继续将传输的数据粘贴到先前已传输的数据上。如何从先前传输的数据下的下一个空行开始传输和粘贴新数据。我在上一篇文章中看到:

LastRow = Target.Range(“A10000”)。End(xlUp).Row + 1,

可以这样做,但我不知道如何在我已经拥有的宏生成的vba中实现这一行。有没有办法做到这一点,而无需编写另一个vba模块来实现这个?感谢所有帮助!

Sub Transfer()

Range("A2:G34").Select
Selection.Copy
Workbooks.Open Filename:= _
    "Book1.xlsx"
Range("A3").Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
    xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
ActiveWorkbook.Save
Range("C6").Select

End Sub

1 个答案:

答案 0 :(得分:0)

所以我想出来了,我没有使用宏录制,因为我无法让我的项目100%工作,但经过研究和试验和错误后,下面的代码完全符合我的想法。这适用于传输两个不同的Excel工作簿或只是工作表!我希望这有助于某人。

Sub Transfer()

Worksheets("Source data Sheet Name").Range("A2:G100").Copy
Workbooks.Open Filename:= _
"File Destination for target"

LastRow = Sheets("Target Sheet Name").Cells(Rows.Count, "A").End(xlUp).Row
ActiveSheet.Paste Destination:=Worksheets("Target Sheet Name").Range("A" & LastRow)

ActiveWorkbook.Save
ActiveWorkbook.Close
End Sub