PrivateSub CommandButton1_Click()Sub CommandButton1_Click() Call Macro1 End Sub PrivateSub CommandButton2_Click()Sub CommandButton2_Click() ''根据项目名称 获取部门名 'A8 显示在B8中 c3--c40 Dim xDis AsInteger Dim xNo AsInteger Dim strProject '项目名称 Dim strDep '制造部门 Dim myPath$, myFile$, AK As Workbook, aRow%, tRow%, i AsInteger Application.ScreenUpdating =False'冻结屏幕,以防屏幕抖动 myPath = ThisWorkbook.Path &"/"'把文件路径定义给变量 myFile =Dir(myPath &"data.xls") '依次找寻指定路径中的*.xls文件 xDis =40 strname = ActiveWorkbook.Name Set AK = Workbooks.Open(myPath & myFile) '打开符合要求的文件 For xNo =3To xDis strProject = Workbooks(strname).Worksheets("System").Range("A8").Value strDep = Workbooks(strname).Worksheets("System").Range("B8").Value If (strProject = AK.Worksheets("二部").Range("C"&CStr(xNo)).Value) Then Workbooks(strname).Worksheets("System").Range("B8").Value ="二部" ExitFor EndIf If (strProject = Workbooks("data.xls").Worksheets("三部").Range("C"&CStr(xNo)).Value) Then Workbooks(strname).Worksheets("System").Range("B8").Value ="三部" ExitFor EndIf If (strProject = Workbooks("data.xls").Worksheets("四部").Range("C"&CStr(xNo)).Value) Then Workbooks(strname).Worksheets("System").Range("B8").Value ="四部" ExitFor EndIf If (strProject = Workbooks("data.xls").Worksheets("五部").Range("C"&CStr(xNo)).Value) Then Workbooks(strname).Worksheets("System").Range("B8").Value ="五部" ExitFor EndIf Next xNo Workbooks(myFile).Close False Application.ScreenUpdating =True'冻结屏幕,此类语句一般成对使用 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' End Sub
Sub 按钮1_单击()Sub 按钮1_单击() Dim myPath$, myFile$, AK As Workbook, aRow%, tRow%, i AsInteger Application.ScreenUpdating =False'冻结屏幕,以防屏幕抖动 myPath = ThisWorkbook.Path &"/分表/"'把文件路径定义给变量 myFile =Dir(myPath &"*.xls") '依次找寻指定路径中的*.xls文件 DoWhile myFile <>""'当指定路径中有文件时进行循环 If myFile <> ThisWorkbook.Name Then Set AK = Workbooks.Open(myPath & myFile) '打开符合要求的文件 For i =1To 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'关闭源工作簿,并不作修改 EndIf myFile =Dir'找寻下一个*.xls文件 Loop Application.ScreenUpdating =True'冻结屏幕,此类语句一般成对使用 MsgBox"汇总完成,请查看!", 64, "提示" End Sub