• ベストアンサー

EXCELを自動的に終了したい

VBAマクロで処理をして、終了後に開いたブックを自動的に終了させるため、 Application.Quit を使用しましたが、 他に開いていたブックも終了してしまいます。 ActiveWorkbook.Close に変更すると、 他にブックを開いていない場合、自動的にブックは終了しますが、EXCELが終了しません。 該当のブックだけを終了することは、できないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • dober-o
  • ベストアンサー率59% (260/439)
回答No.1

If Workbooks.Count > 1 Then   ActiveWorkbook.Close (False) Else   ActiveWorkbook.Saved = True   Application.Quit End If 複数開いているときは該当ブックのみ閉じる ひつとのみのときはExcel強制終了 でどうでしょう

s0176
質問者

お礼

大変有難うございます、 この方法でうまくいきました。

その他の回答 (2)

  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.3

#2です。補足しときます。 #2 のブック名を指定して閉じる、、を応用した例です。 マクロの書かれたブック = ThisWorkbook 以外を全て閉じ、 最後に残った ThisWorkbook を Application.Quit で閉じ てます。 Sub test()   Dim wb As Workbook   'For Eachループでこのマクロが書かれたブック以外を   '全て閉じる   For Each wb In Workbooks     If Not wb Is ThisWorkbook Then       wb.Close     End If   Next wb   Set wb = Nothing   '最後に残ったブックを閉じる   Application.Quit End Sub

  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.2

こんにちは。KenKen_SP です。 複数のブックが開いた状態で、特定のブックを閉じるには Workbooks("ブック名.xls").Close でブック名を指定して閉じれば良いかと。

関連するQ&A

専門家に質問してみよう