2016-06-30 11 views
0

私は2つのファイルを持っています:複数の場所にブックを保存する

X - 私はどこからマクロを実行していますか? Y - 複数の場所に保存するテンプレートを含むファイル。

はどのようにして行うことができます。

Y.SaveAsファイル名:= "File1.xlsx"

Y.SaveAsファイル名:= "File2.xlsx"

Y.SaveAsファイル名:=」 File3.xlsx "

私が見つけたと思われる唯一の解決策は、最初の保存後に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 

答えて

1

変数にブックを設定し、それを使用しています。

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 
+0

何らかの理由で1004ランタイムエラーが発生します。私はメインポストに入れる重要な細部を忘れてしまった。 – AltoidsBenefitsH

+0

編集を参照してください。私は 'SaveCopyAs'を使って問題を解決するべきだと思います。 – Kyle

+0

また、名前とともにファイルパスを指定しないと、アクティブディレクトリが使用されることに注意してください。 – Kyle

0

日付形式は、私の名前を切り捨てた/マークを使用しています。

関連する問題