从具有多个工作表的多个工作簿中汇总行单元格值并将其按列方式粘贴

这是这里问题的第二部分: 从多个工作表中获取多个工作簿中的单元格值 – macros

总结我的要求:我有50个工作簿。 每个有3个工作表(共有6个,其他3个不相关)。 只有第一行具有值(例如,来自sheet1,2和3中单元格A1到N1的10个值)。 我想从每个工作表中分别汇总每个工作簿中的第一行值,并将其粘贴到工作表1中的macros工作簿中的单个列中。 (所以我会得到30个值的最后一列)。

我试着继续上一个问题的代码。 但我无法这样做。 只有修改是粘贴在一个单一的列(D列)。 任何帮助将不胜感激。

试试这个:

Sub SUM_Workbooks() Dim FileNameXls, f Dim wb As Workbook, i As Integer FileNameXls = Application.GetOpenFilename(filefilter:="Excel Files, *.xls*", MultiSelect:=True) If Not IsArray(FileNameXls) Then Exit Sub Application.ScreenUpdating = False 'clear previous values ThisWorkbook.Sheets("Sheet1").Range("A1:A30").Clear For Each f In FileNameXls Set wb = Workbooks.Open(f) For i = 1 To 3 wb.Worksheets(i).Range("A1:N1").Copy 'change Sheet1 to suit ThisWorkbook.Sheets("Sheet1").Range("A" & 1 + 10 * (i - 1)).PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd, Transpose:=True Next i wb.Close SaveChanges:=False Next f Application.CutCopyMode = False Application.ScreenUpdating = True End Sub