• 締切済み

マクロ 実行後にファイルを閉じたい

マクロを実行した後、実行したファイルを閉じるようにしたいのですが、 どのように書いたらよいか分からず、どなたかご教授いただけませんでしょうか。 グーグルで検索したマクロを実行して、その後その実行したファイルを 閉じるように加えたかったため、以下の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 ----------------------------

みんなの回答

回答No.4

実行したマクロの最下段のEnd subのひとつ上に書き込みますがこの作業しているBook名がBook1だったら Windows("Book1.xlsx").Close Trueとなります

  • HohoPapa
  • ベストアンサー率65% (455/693)
回答No.3

追記です。私だったら下のようにします。 (自身以外のブックが開いている場合を考慮) 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)
回答No.2

作業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 というコードになります。

teruku106
質問者

お礼

ご回答いただきありがとうございます。 根本的にマクロを理解していないため、的を得ない質問になってしまっているようで、ご教授いただいたものを貼り付けてもうまくいきませんでした。 少し質問の仕方を考えてみます。 申し訳ありません。

  • Nobu-W
  • ベストアンサー率39% (725/1832)
回答No.1
参考URL:
http://hensa40.cutegirl.jp/archives/1286
teruku106
質問者

お礼

早速ありがとうございます。 参考リンクを拝見しました。 VBA末尾に貼り付けて実行してみましたが、何も起こらず・・・ 根本的に何か私が勘違いしていそうな・・・

関連するQ&A