• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBAでファイルを保存せずに閉じた後の他ブックの挙動)

VBAでファイルを保存せずに閉じた後の他ブックの挙動

このQ&Aのポイント
  • エクセル2000(SP3)で複数のブックを起動し、片方のブックを保存せずに終了させると、他のブックの操作ができなくなる問題について質問です。
  • 他のアプリケーションが起動している場合に限り、一度他のアプリケーションを選択してから再度Excelを選択すると、他のブックの操作が可能になります。
  • ファイルを保存せずに終了させるためのマクロのコードを示しています。

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

  • ベストアンサー
  • end-u
  • ベストアンサー率79% (496/625)
回答No.1

Workbook_BeforeCloseイベントはClose『前』に実行されるイベントで、 そのイベント実行後に、何もしなくてもBookはCloseします。 (イベント内でCancel = True にしなければ) イベント内で >ThisWorkbook.Close を記述してしまうと、そのCloseメソッドによって、 またBeforeCloseイベントを呼び出してしまいます。 >ThisWorkbook.Close は不要です。というより記述してはいけません。 保存せずに閉じる場合は Savedプロパティ を True にしてあげれば 「保存しますか?」のメッセージは表示されません。 Private Sub Workbook_BeforeClose(Cancel As Boolean)   If Workbooks.Count = 1 Then     Application.DisplayAlerts = False     Application.Quit   Else     ThisWorkbook.Saved = True     'ThisWorkbook.Close SaveChanges:=False   End If End Sub

5dogs_fuji
質問者

お礼

早速のご回答、本当にありがとうございます。 イベント名の通りの挙動でしたね。 ご指摘のとおりClose記述をコメントアウトしたところ、期待通りの動作が確認できました。

関連するQ&A