这是一个问题在这里第2部分: 从多个工作表的多个工作簿总和单元格的值-宏
总结我的要求:我有50个工作簿。 每个有3个工作表(共6.其他3是不相关的)。 只有第一行的值(比方说从单元格A1 10个值N1在sheet1,2and3)。 我想从每个工作表的单独从每个工作簿求和的第一行的值,并将其粘贴在宏工作簿在片1中,在一列。 (所以我会得到30个值的最后一列)。
我试图继续从以前的问题的代码。 但我不能这样做。 唯一的修改是将其粘贴在纵列单片(列d)。 任何帮助将不胜感激。
这是一个问题在这里第2部分: 从多个工作表的多个工作簿总和单元格的值-宏
总结我的要求:我有50个工作簿。 每个有3个工作表(共6.其他3是不相关的)。 只有第一行的值(比方说从单元格A1 10个值N1在sheet1,2and3)。 我想从每个工作表的单独从每个工作簿求和的第一行的值,并将其粘贴在宏工作簿在片1中,在一列。 (所以我会得到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