プロが教えるわが家の防犯対策術!

質問させてください、VBAで保存しないでBookを閉じるコードを使用すると
「Excel」という名前の真っ白な空のBookが残っている?または開いてる?のです。
手動で閉じれば問題ないのですがせっかくVBAを使っているのでこの手間を省きたいのです。

原因のわかる方、宜しくお願い致します。

Sub 閉じる ()
Application.DisplayAlerts = False
Workbooks("××××.xlsm").Close
Application.DisplayAlerts = True
End Sub

A 回答 (2件)

>「Excel」という名前の真っ白な空のBookが残っている


それだけのマクロでは、おっしゃっている現象は現れません。

>Workbooks("××××.xlsm").Close
ブックが自ブックに限るはずです。そして、その残ったものは、Excel.Application のはずです。
Excelが終わりという命令を出していないからですが、

Sub 閉じる ()
Application.Quit '命令を先にしてあげないと、マクロが途切れてしまいます。
 Application.DisplayAlerts = False
 Workbooks("××××.xlsm").Close 'または、ThisWorkbook.Close
 Application.DisplayAlerts = True
End Sub

とします。
状況が違うようでしたら、更に情報を加えてください。

ただし、Excel2010以下では、別のコードが必要になります。
    • good
    • 22
この回答へのお礼

無事にBookを閉じることができました、ありがとうございます!

お礼日時:2019/10/12 13:47

他のブックが開かれているかもしれないので以下のようなものはいかがですか?



Sub 閉じる()

 Application.DisplayAlerts = False
 If (Workbooks.Count = 1) Then
  Application.Quit
 Else
  ThisWorkbook.Close
  Application.DisplayAlerts = True
 End If

End Sub
    • good
    • 27

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A