VBA如何在不打开文件的情况下使用“另存为”功能

3
有没有办法在不打开目标文件的情况下使用ActiveWorkbook.SaveAs
当我的主要工作簿被保存时,它会在不同路径下生成另一个没有宏的文件(使用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:\CGP\DEOPEX\01 - Supervisão\10 - Alocação das equipes\Consulta Alocados\ALOCACAO 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
2个回答

3

其中一种方法是...

Sub CopiarNovaPlanilha()

Application.EnableEvents = False
Application.DisplayAlerts = False

ActiveWorkbook.Sheets.Copy
ActiveWorkbook.SaveAs "I:\CGP\DEOPEX\01 - Supervisão\10 - Alocação das equipes\Consulta Alocados\ALOCACAO TECNICOS", FileFormat:=51
ActiveWorkbook.Sheets(1).Name = "FUNCIONARIOS"


Application.EnableEvents = True
Application.DisplayAlerts = True

End Sub

谢谢,我已经打开了两个文件,并添加了一行代码 Workbooks("ALOCACAO TECNICOS").Close 来关闭新副本 :) - paulinhax
@paulinhax 不用谢!很高兴它对你有用。 :) - Subodh Tiwari sktneer

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接