我们项目管理有两个工作薄,一个里面有多个表,每天建一个,记录当天项目,另一个工作薄,有多个表,其中一个是所有项目汇总。
以前都是第一个工作薄一个表做完,再复制粘贴到第二个工作薄的汇总表中。
写了个VBA宏完成这个工作。
Sub CopyToOtherBook()
' copyToOtheBook Macro
' 宏由 cuianzhu 录制,时间: 2013-6-18
Dim fname As String
Dim maxLine As Integer
Dim maxLineS As String
Dim wb As Workbook
Dim curSheet As String
'除去表头,所有行选中
maxLine = ActiveSheet.UsedRange.Rows.Count
maxLineS = "2:" + CStr(maxLine)
Rows(maxLineS).Select
Selection.Copy
fpath = "D:\\XXX\\"
fname = "第二个工作薄.xls"
curSheet = "汇总表"
'打开第二个工作薄,激活汇总表
Set wb = Workbooks.Open(fpath + fname)
wb.Worksheets(curSheet).Activate
'找到最后一行
maxLine = ActiveSheet.UsedRange.Rows.Count
'选中最后一行下一行第一个表格
Cells(maxLine + 1, 1).Select
ActiveSheet.Paste
ActiveWorkbook.Save
ActiveWorkbook.Close
End Sub
然后在对应的表里执行该宏,就可以把所有该表的数据复制到另一个工作薄的汇总表里了。