Sub 多表累计()
Dim i As Integer
Dim j As Integer
Dim s As Integer
Dim t As String
Dim a(8, 3) As Integer
'读取并累加每个工作表中的数值
For s = 2 To 21
t = Cells(s, 6)
For i = 2 To 10
For j = 2 To 5
Cells(i, j).Formula = "='E:\FIELS\[" & t & ".xls]Sheet1'!R" & i & "C" & j
a(i - 2, j - 2) = a(i - 2, j - 2) + Cells(i, j)
Next j
Next i
Next s
'输出值
For i = 2 To 10
For j = 2 To 5
Cells(i, j) = a(i - 2, j - 2)
Next j
Next i
End Sub
可以用宏来完成。
下面的宏对 工作簿中每个表中的B2:E10单元格的数值进行汇总
然后把汇总结果放入一个新建的工作表中。
希望对你有启发。
======================================================
Sub 多表累计()
Dim i As Integer
Dim j As Integer
Dim a(8, 3) As Integer
'读取并累加每个工作表中的数值
For Each Sheet In ActiveWorkbook.Sheets
Sheet.Select
For i = 2 To 10
For j = 2 To 5
a(i - 2, j - 2) = a(i - 2, j - 2) + Cells(i, j).Value
Next j
Next i
Next Sheet
'新建一个工作表并将结果输入
Sheets.Add
For i = 2 To 10
For j = 2 To 5
Cells(i, j) = a(i - 2, j - 2)
Next j
Next i
End Sub