这是因为你的代码中,只是关闭了一个Excel文件。
事实上,应该关闭整个Excel软件。
VBA代码可以修改为:
Sub 完成工作()
ActiveWorkbook.Save
ThisWorkbook.Application.Quit
'或者Application.Quit
End Sub
即可。
关闭工作簿: oExcel.WorkBooks.Close 24) 退出 Excel: oExcel.Quit
在存放文件的目录之外打开一个空的Excel文档
运行下面分宏:(注意文件目录)
Sub cfl()
Dim fs, f, f1, fc, s, x
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder("e:\test\") '存放文件的目录
Set fc = f.Files
For Each f1 In fc
If Right(f1.Name, 3) = "xls" Then
x = x + 1
Workbooks.Open (f1.Path)
For i = 1 To 255
Workbooks(1).Sheets(1).Cells(x, i).Value = _
Workbooks(2).Sheets(1).Cells(1, i).Value
Next
Workbooks(2).Close savechanges:=False
End If
Next
End Sub
9月