簡體   English   中英

將單元格的值從多個工作簿復制到主文件

[英]Copy value of cell from multiple workbooks to a master file

在工作中,我想將一些excel工作簿中的數據合並到單個主文件中。 由於UAC和其他原因,我無法安裝任何其他程序或工具,因此必須使用vba。 編輯:我還停留在Excel 2010中,沒有內置的整合工具。

我已經完成了一些代碼,但是遇到了麻煩。 我想將許多工作簿(A1:A35)的指定范圍復制到主文件的列中。 master的每一列都是每個文件。 我的代碼的問題是它不會移到下一個文件的下一列。

Sub Get_Columns()
    Dim sPath As String
    Dim sFil As String
    Dim owb As Workbook
    Dim twb As Workbook

    With Application
        .Calculation = xlCalculationManual
        .EnableEvents = False
        .ScreenUpdating = False
    End With

    Set twb = ThisWorkbook
    sPath = ThisWorkbook.Path & "\"
    sFil = Dir(sPath & "*.xlsx")

    Do While sFil <> "" And sFil <> twb.Name
        Set owb = Workbooks.Open(sPath & sFil)
        twb.Sheets("Podsumowanie").Cells(1, Rows.Count).End(xlToLeft).Offset(, 1) = owb.Sheets("Wyniki").Range("A1:A35").Value
        owb.Close False 'Close no save
        sFil = Dir

    Loop

        With Application
        .Calculation = xlAutomatic
        .EnableEvents = True
        .ScreenUpdating = True
    End With
End Sub

嘗試用這三個替換單行。

您需要引用Columns.count ,而不是rows.count因為您要轉到最后一列然后向后工作。 (單元格是行,列)。

With owb.Sheets("Wyniki").Range("A1:A35")
    twb.Sheets("Podsumowanie").Cells(1, Columns.Count).End(xlToLeft).Offset(, 1).Resize(.Rows.Count, .Columns.Count).Value = .Value
End With

暫無
暫無

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

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