有一千张工作簿:
名字分别为:工作簿1,工作簿2,工作簿3...
工作簿1内容为:中大 100
华工 98
华师 88
暨大 92
广外 89
华农 87
广外 80
广药 77
广大 69工作簿2内容为:
中大 101
华工 95
华师 89
暨大 90
广外 85
华农 89
广外 84
广药 79
广大 64后面的工作簿的数据结构都是一样的,只是第二列数据不同。
然后要把第二列的数据相加;结果输出效果如(工作簿1)中大 100
华工 98
华师 88
暨大 92
广外 89
华农 87
广外 80
广药 77
广大 69总数 780代码如下:Sub pp()
Dim i As Integer
Dim m As String
Cells(10, 1) = "总数"
For i = 1 To 9
Cells(10, 2) = Cells(10, 2) + Cells(i, 2)
Next
End Sub
这个是处理一个工作簿的。
我想编写一个外部过程,可以点击一下按钮就一下子将一千个工作簿同时进行上述的相加操作。请高手们指导下(代码支持)
名字分别为:工作簿1,工作簿2,工作簿3...
工作簿1内容为:中大 100
华工 98
华师 88
暨大 92
广外 89
华农 87
广外 80
广药 77
广大 69工作簿2内容为:
中大 101
华工 95
华师 89
暨大 90
广外 85
华农 89
广外 84
广药 79
广大 64后面的工作簿的数据结构都是一样的,只是第二列数据不同。
然后要把第二列的数据相加;结果输出效果如(工作簿1)中大 100
华工 98
华师 88
暨大 92
广外 89
华农 87
广外 80
广药 77
广大 69总数 780代码如下:Sub pp()
Dim i As Integer
Dim m As String
Cells(10, 1) = "总数"
For i = 1 To 9
Cells(10, 2) = Cells(10, 2) + Cells(i, 2)
Next
End Sub
这个是处理一个工作簿的。
我想编写一个外部过程,可以点击一下按钮就一下子将一千个工作簿同时进行上述的相加操作。请高手们指导下(代码支持)
Sub yy()
Dim p$, f$, sh As Worksheet
p = ThisWorkbook.Path & "\"
f = Dir(p & "*.xls")
On Error Resume Next
Application.ScreenUpdating = False
Do While f <> ""
If f <> ThisWorkbook.Name Then
Workbooks.Open p & f
Set sh = ActiveWorkbook.ActiveSheet
sh.Cells(10, 1) = "总数"
sh.Cells(10, 2) = Application.Sum(sh.[b1:b9])
Workbooks(f).Close True
End If
f = Dir
Loop
Set sh = Nothing
Application.ScreenUpdating = True
End Sub
工作簿后马上把该工作簿关闭?