- 締切済み
マクロ 実行後にファイルを閉じたい
マクロを実行した後、実行したファイルを閉じるようにしたいのですが、 どのように書いたらよいか分からず、どなたかご教授いただけませんでしょうか。 グーグルで検索したマクロを実行して、その後その実行したファイルを 閉じるように加えたかったため、以下のPrivate Sub book1close()を加えたのですが 何も起こらずファイルは開かれたままです。 まったく記述する構文を理解できてないのでお恥ずかしい質問で申し訳ございませんがどなたか、どうかよろしくお願い致します。 ---------------------------- Option Explicit Sub 作業1() ・・・・・・・ End Sub Private Sub 作業2() ・・・・・・・ End Sub Private Sub book1close() この行以下を追加しましたが動きません! Application.DisplayAlerts = False Workbooks("Book1.xlsx").Save Workbooks("Book1.xlsx").Close Application.DisplayAlerts = True End Sub ----------------------------
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- nebikitorikai
- ベストアンサー率100% (1/1)
実行したマクロの最下段のEnd subのひとつ上に書き込みますがこの作業しているBook名がBook1だったら Windows("Book1.xlsx").Close Trueとなります
- HohoPapa
- ベストアンサー率65% (455/693)
追記です。私だったら下のようにします。 (自身以外のブックが開いている場合を考慮) Private Sub 作業2() ・・・・・・・ EndJob End Sub '//-------------- '// 終了処理 '//-------------- Sub EndJob() ThisWorkbook.Activate ThisWorkbook.Save 'Application.WindowState = xlNormal If Application.Workbooks.Count = 1 Then Application.Quit Else ThisWorkbook.Close End If End Sub
- HohoPapa
- ベストアンサー率65% (455/693)
作業2が終了したら、実行したファイルを閉じるようにしたい。 ということであれば、 Private Sub 作業2() ・・・・・・・ book1close End Sub Private Sub book1close() この行以下を追加しましたが動きません! Application.DisplayAlerts = False Workbooks("Book1.xlsx").Save Workbooks("Book1.xlsx").Close Application.DisplayAlerts = True End Sub というコードになります。
- Nobu-W
- ベストアンサー率39% (725/1832)
お礼
早速ありがとうございます。 参考リンクを拝見しました。 VBA末尾に貼り付けて実行してみましたが、何も起こらず・・・ 根本的に何か私が勘違いしていそうな・・・
お礼
ご回答いただきありがとうございます。 根本的にマクロを理解していないため、的を得ない質問になってしまっているようで、ご教授いただいたものを貼り付けてもうまくいきませんでした。 少し質問の仕方を考えてみます。 申し訳ありません。