以上的我都看了,但还是没法解决我的问题。 我的情况是这样的,文件夹D:\材料\20070812下面有N个工作薄(N001.xls,N002.xls,......),每个工作薄都有4个sheets,分别为"设置","汇总","区公司材料","地方材料". 现在需要把各个工作薄里面的"汇总"里的a5:m往下的内容(行数不定)汇总。 问题其实和上面讲的是一样的,就是多了一个:指定工作表 另帮我看一下我对代码的理解是否正确: Sub 按钮1_单击() Dim myPath$, myFile$, AK As Workbook, aRow%, tRow%, i As Integer Application.ScreenUpdating = False '冻结屏幕,以防屏幕抖动 myPath = ThisWorkbook.Path & "\分表\" '把文件路径定义给变量 myFile = Dir(myPath & "*.xls") '依次找寻指定路径中的*.xls文件 Do While myFile <> "" '当指定路径中有文件时进行循环 If myFile <> ThisWorkbook.Name Then Set AK = Workbooks.Open(myPath & myFile) '打开符合要求的文件 For i = 1 To AK.Sheets.Count '需要统计的工作薄里有多少个表 aRow = AK.Sheets(i).Range("a65536").End(xlUp).Row '需要统计的表里有多少行 tRow = ThisWorkbook.Sheets(1).Range("a65536").End(xlUp).Row + 1 '汇总表里最后空行是在哪 'AK.Sheets(i).Select AK.Sheets(i).Range("a3:k" & aRow).Copy ThisWorkbook.Sheets(1).Range("a" & tRow) Next Workbooks(myFile).Close False '关闭源工作簿,并不作修改 End If myFile = Dir '找寻下一个*.xls文件 Loop Application.ScreenUpdating = True '冻结屏幕,此类语句一般成对使用 MsgBox "汇总完成,请查看!", 64, "提示" End Sub
qTCztfgA.rar
(31.58 KB, 下载次数: 192)
[此贴子已经被作者于2007-8-14 11:46:42编辑过] |