有什么方法可以在不打开目标文件的情况下使用ActiveWorkbook.SaveAs
?
我的主工作簿名为TEC ALOC EXT
有一个代码,当它保存时,它会在不同的路径(使用FileFormat:=51
(中生成另一个没有宏的文件,称为ALOCACAO TECNICOS
。但是这种类型的文件格式也会在最后打开目标文件(ALOCACAO TECNICOS
(并关闭TEC ALOC EXT
工作表。
这对我不好,因为我想继续改变TEC ALOC SHEET
表上的东西。
有没有办法在不打开的情况下保存ALOCACAO TECNICOS
?
这是我的代码:
Sub CopiarNovaPlanilha()
Application.EnableEvents = False
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs "I:CGPDEOPEX 1 - Supervisão10 - Alocação das equipesConsulta AlocadosALOCACAO TECNICOS", FileFormat:=51
ActiveWorkbook.Sheets(1).Name = "FUNCIONARIOS"
Application.EnableEvents = True
Application.DisplayAlerts = True
End Sub
这是由AfterSave
事件触发的:
Private Sub Workbook_AfterSave(ByVal Success As Boolean)
If Success Then
Call CopiarNovaPlanilha
End If
End Sub
一种方法是这样的...
Sub CopiarNovaPlanilha()
Application.EnableEvents = False
Application.DisplayAlerts = False
ActiveWorkbook.Sheets.Copy
ActiveWorkbook.SaveAs "I:CGPDEOPEX 1 - Supervisão10 - Alocação das equipesConsulta AlocadosALOCACAO TECNICOS", FileFormat:=51
ActiveWorkbook.Sheets(1).Name = "FUNCIONARIOS"
Application.EnableEvents = True
Application.DisplayAlerts = True
End Sub
这是一个网站,可以帮助您通过使用 FileSystemObject 库完成所需的工作。这将使您能够从一个位置复制到另一个位置,而无需实际打开文件。
第一个链接将向您展示如何设置 excel 以使用它。
http://www.wiseowl.co.uk/blog/s210/filesystemobject.htm
此链接将更详细地描述 FSO 库,并告诉您一些有关方法的信息。应该给你足够的开始
http://www.wiseowl.co.uk/blog/s212/files-folders-vba.htm