- ベストアンサー
EXCELを自動的に終了したい
VBAマクロで処理をして、終了後に開いたブックを自動的に終了させるため、 Application.Quit を使用しましたが、 他に開いていたブックも終了してしまいます。 ActiveWorkbook.Close に変更すると、 他にブックを開いていない場合、自動的にブックは終了しますが、EXCELが終了しません。 該当のブックだけを終了することは、できないでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
If Workbooks.Count > 1 Then ActiveWorkbook.Close (False) Else ActiveWorkbook.Saved = True Application.Quit End If 複数開いているときは該当ブックのみ閉じる ひつとのみのときはExcel強制終了 でどうでしょう
その他の回答 (2)
- KenKen_SP
- ベストアンサー率62% (785/1258)
#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)
こんにちは。KenKen_SP です。 複数のブックが開いた状態で、特定のブックを閉じるには Workbooks("ブック名.xls").Close でブック名を指定して閉じれば良いかと。
お礼
大変有難うございます、 この方法でうまくいきました。