将工作簿保存在多个位置VBA中

我有两个文件:

X – 我从哪里运行macros的文件。 Y – 带有模板的文件,我保存到多个位置。

我能怎么做:

Y.SaveAs文件名:=“File1.xlsx”

Y.SaveAs文件名:=“File2.xlsx”

Y.SaveAs文件名:=“File3.xlsx”

我似乎find的唯一的解决办法是在第一次保存后使用ActiveWorkbook,但从我读的是一个坏习惯这样做。 有另一种方法吗?

编辑:文件名是:=“文件(”&SomeDateString&“).xlsx”

码:

Dim Y as Workbook Set Y = "C:\MyFiles\FileTemp.xlsx" -X Generates Data to Y Dim datenow as date dim datestring as string datenow = now datestring = Format(datenow, "Short Date") Application.DisplayAlerts = False Y.SaveCopyas Filename:="C:\MyData1\Budget("& datestring &").xlsx" Y.SaveCopyas Filename:="C:\MyData2\Budget("& datestring &").xlsx" Y.SaveCopyas Filename:="C:\MyData3\Budget("& datestring &").xlsx" Application.DisplayAlerts = True 

将您的工作簿设置为一个variables并使用它。

 Sub xxxx() Dim y as workbook Set y = Workbooks("Workbook name") Y.SaveCopyAs Filename:="File(" & SomeDateString & ").xlsx" Y.SaveCopyAs Filename:="File(" & SomeDateString & ").xlsx" Y.SaveCopyAs Filename:="File(" & SomeDateString & ").xlsx" End Sub 

date格式使用了一个截断了我的命名的标记。