※ ChatGPTを利用し、要約された質問です(原文:エクセルVBA実行後にファイルを自動で閉じるVBA)
エクセルVBAでファイルを自動印刷して保存し、閉じる方法
このQ&Aのポイント
エクセルVBAを使用して特定のエクセルファイルを自動的に印刷し、保存して閉じる方法について教えてください。
あるエクセルファイルに配置されたボタンを押すと、VBAコードが実行され、"工程分析.xls"ファイルの各シートが自動的に印刷され、保存されます。その後、エクセルファイルは自動的に閉じられます。上記の処理が完了した後に、エクセルファイルを自動的に上書き保存するために、どのようなVBAコードを追加すればよいですか?
エクセルVBAを使用してボタンを押すと、特定のエクセルファイルが自動的に印刷され、保存され、閉じられる処理を行います。上記の処理が完了した後に、エクセルファイルを自動的に上書き保存するためには、どのようなVBAコードを追加する必要がありますか?
エクセルVBA実行後にファイルを自動で閉じるVBA
Sub 印刷()
'
' Macro1 Macro
' マクロ記録日 : 201X/X/X ユーザー名 : AAAA
'
'
If MsgBox("実行する場合はOK、間違ってこのボタンをクリックした場合はキャンセルをクリックしてください。(日付確認後、印刷のこと。)", vbOKCancel) = vbCancel Then
End
End If
'A印刷
ChDir "L:\フォルダB\X\新規"
Workbooks.Open Filename:="L:\フォルダB\X\新規\記録表\工程分析.xls"
Sheets("毎日印刷").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Sheets("月曜日印刷").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Sheets("火曜日印刷").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Sheets("水曜日印刷").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Sheets("木曜日印刷").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Sheets("金曜日印刷").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Sheets("土曜日印刷").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Sheets("日曜日印刷").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveWorkbook.Save
ActiveWindow.Close
あるエクセルファイルのボタンに上記のVBAが記入されています。
そのボタンを押すと「工程分析.xls」ファイルを呼び出し各シートを自動印刷して保存して閉じるVBAです。
質問ですがボタンの配置されたあるエクセルファイルの上記VBAの処理を全て完了した後に上書き保存を自動で実行し、自動であるエクセルファイルを閉じるVBAはどの様に追加すれば良いでしょうか?
お礼
この度は素早い回答を誠にありがとうございます。 非常に助かりました。