在excel中的工作簿之间提取数据,并在下一个可用的空列中显示已提取的数据

时间:2014-01-14 14:46:50

标签: excel vba excel-vba

我目前正在尝试简化我每天必须完成的流程。我目前将更新的数据从一个excel文档复制到另一个。

我希望使用VBA来调用工作簿中的数据,而不是每天复制和粘贴数据。这很简单,而不是我的问题所在。

我需要将数据放在下一个空列中,因为指定的工作簿需要收集并保存每日数据。

Sub pull()

    Dim path As String
    path = "C:\users\Seanin.Ledgewood\documents\book2.xlsm"

    Dim currentWb As Workbook
    Set currentWb = ThisWorkbook

    Dim openWb As Workbook
    Set openWb = Workbooks.Open(path)

    Dim openWs As Worksheet
    Set openWs = openWb.Sheets("Sheet1")

    currentWb.Sheets("Sheet1").Range("A1") = openWs.Range("A1")

    openWb.Close (True)

End Sub

正在使用的代码的简化版本。我知道下面的代码需要编辑,并希望对此问题有任何帮助

 currentWb.Sheets("Sheet1").Range("A1") = openWs.Range("A1")

1 个答案:

答案 0 :(得分:1)

您需要更改的是(此代码将在第一行的第一个空列中添加新数据):

Dim lastcolumn As Long
With currentWb.Sheets("Sheet1")
    lastcolumn = .Cells(1, .Columns.Count).End(xlToLeft).Column
    .Cells(1, lastcolumn + 1) = openWs.Range("A1")
End With