[英]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.