dポイントプレゼントキャンペーン実施中!

ExcelVBAで毎月月初の1回のみにBookを開いたときに実行させたいと時はどうしたらよいのでしょうか。
日報を転記して、その月の名前で保存させたいのでできれば月初にbookを開いたときに1度だけ実行してくれれば良いなと思うのですが、可能なのでしょうか。
もし可能でしたらソースを教えてください。
宜しくお願い致します。

A 回答 (2件)

n-junです。



Sub try()

ThisWorkbook.Worksheets(Array(1, 2)).Move

With ActiveWorkbook
.SaveAs Filename:=ThisWorkbook.Path & "\" & .Worksheets(1).Name & ".xls"
End With

End Sub

こうゆう感じの事ですか?

この回答への補足

ブックは、毎日開き更新しているのですが、その開いた日が
月の第一営業日の場合にシートを移動させたいのです。
質問内容に不足がありり申し訳ありません。
宜しくお願い致します。

補足日時:2009/07/23 21:42
    • good
    • 0
この回答へのお礼

ありがとうございました。
無事に保存することができました。

お礼日時:2009/06/29 20:27

>日報を転記して、その月の名前で保存させたいので


これが
http://okwave.jp/qa5077296.html
に関係する事であるなら、そのシートが存在するか否かを判定するだけではないかと思えるのですが。

1度だけ実行する「何か」を明確にされるか、実行した際のチェックをどこかのシートに
記録していくかかな?

この回答への補足

詳細を記せずすみません。
月初に一度だけやりたいことは、シートを新規ファイルに移動させて、
[Sheet1]シート名と同じファイル名にさせ、カレントフォルダ(日報ファイルと同じ階層)に保存させることです。

↓オブジェクトが必要ですと言われてしまいました。

ThisWorkbook.Worksheets(Array(1, 2)).Move.Workbooks.Add
ActiveWorkbook.SaveAs Filename:="ws1.xls"

宜しくお願い致します。

補足日時:2009/06/28 20:34
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!