ブック(ファイル)だけじゃなくて
アプリケーションも閉じたいのですが
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.Close SaveChanges:=True
End Sub
としたのですが、実際閉じるのはブックだけでアプリケーションは開いたままです。
「ウインドウを閉じる」を押して、ブックだけが閉じるのはわかるのですが
図のようにアプリケーション閉じるボタンを押してもウインドウ(ブック)しか閉じません。
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.Close SaveChanges:=True
Application.Quit
End Sub
にしても結果は同じです。
しかし、Workbook_BeforeCloseイベントがないファイルなら、
アプリケーション閉じるボタンを押しても全て終了できます。
Workbook_BeforeCloseイベントを使っても
アプリケーションも閉じる方法を教えてください。
No.1
- 回答日時:
[ActiveWorkbook.Close SaveChanges:=True]により次のステップが
無効になっています。
Sub ボタン1_Click()
Application.Quit
End Sub
ActiveWorkbook.Close SaveChanges:=True
をすると、それ以降は無効になるのですか。知りませんでした。
シートのボタンを押してからのイベントなら、
Private Sub CommandButton1_Click()
Application.Quit
ActiveWorkbook.Close SaveChanges:=True
End Sub
ですべて保存できますが、
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.Quit
ActiveWorkbook.Close SaveChanges:=True
End Sub
で、アプリケーションの×ボタンやウインドウの×ボタンを押して閉じようとしても
アプリケーションが残ってしまいます。
No.2
- 回答日時:
こんばんは。
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.Quit
ActiveWorkbook.Close SaveChanges:=True
End Sub
としておくとOKです。もちろん保存も出来てます。
ActiveWorkbook.Close SaveChanges:=True
Application.Quit
を逆にしたらうまくできました! ありがとうございました。
No.3
- 回答日時:
>Private Sub Workbook_BeforeClose(Cancel As Boolean)
> ActiveWorkbook.Close SaveChanges:=True
> Application.Quit
>End Sub
>アプリケーションは開いたままです。
Application.Quitか実行される前にActiveWorkbook.Close してるんだから当然では
試してみて
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Save
Application.Quit
End Sub
ActiveWorkbook.Close SaveChanges:=True
ではなく、ThisWorkbook.Saveにすればいいのですね。
理由も教えてくれてありがとうございました。
No.4ベストアンサー
- 回答日時:
こんばんは。
この現象は、ずいぶん前から関わっています。
私の話は、ここでは該当しないかもしれませんが、少し加えておきます。
ActiveWorkbook.Close SaveChanges:=True
は、#3さんご指摘のように、
ThisWorkbook.Close SaveChanges:=True
でしょう。
もしくは、
最初に、一旦保存した後に、
For Each w In Workbooks
If Not w Is Thisworkbook Then
w.Close False
End if
Next w
Thisworkbook.Close False
Application.Quit '←これを、Thisworkbook.Close の前に置くこともアリ
私の場合と同じだとは言いませんが、Excel 2007/ 2003で、いろいろ試していましたが、未だ、こちらは解決していません。そんなに単純ではないかもしれません。
http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub0 …
井上さんが、ここでお書きになっています。彼のサンプルも試してみましたが、うまく行っていません。
井上さんも書いていますが、#2さんの方法は、昔から知られています。Quitメソッドは、Application に予約する、というのですが、そうは行っていません。私の場合は、シートの部分はなくなって、フレームが残ってしまいます。正確には、本体(Application) と、ADDINが残ってしまいます。この問題は、何年も解決はしていません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- Visual Basic(VBA) VBA Bookの表示、非表示 1 2022/09/16 20:44
- Excel(エクセル) beforecloseの中からの抜け出し方 1 2023/08/10 18:01
- Visual Basic(VBA) 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする 5 2022/03/26 18:31
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) エクセルVBA(実行時エラー438)の対処法を教えてもらえないでしょうか 3 2023/04/22 13:43
- Excel(エクセル) excelvbaのenableeventsについて 3 2022/08/30 11:20
- Visual Basic(VBA) シートをコピーする下記記述でダイアログを用いた記述がわかりません?( A = Dir(ThisWor 4 2022/08/22 12:26
- Visual Basic(VBA) VBA This Workbookモジュールを別ファイルにコピーする方法 1 2022/09/14 01:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
写真保存アプリは運営側からは...
-
Corei 7-12700(Alder Lake) と ...
-
アカウント名とユーザー名との...
-
windows11でファイアーウォール...
-
Outlook でのメールの表示方法...
-
「このアプリケーションのサイ...
-
アクティブでないアプリケーシ...
-
jwwでjwcファイルが開かない!
-
Internet Explorerの警告
-
OFFICEアプリケーション上で日...
-
パソコンでらじるらじるが聞け...
-
【Chapter2】OSとアプリケーシ...
-
違うwindowsバージョン間でのデ...
-
Windows PE で動かない EXE と...
-
Office365soloとoffice2016との...
-
PCのアカウント名変更の影響に...
-
用語について:アプリケーショ...
-
イベントエラーの解決法
-
パソコンを起動すると出てくる...
-
ユーザー切り替えvistaの場合
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
写真保存アプリは運営側からは...
-
PCのアカウント名変更の影響に...
-
携帯のAPPとは何ですか
-
Outlook でのメールの表示方法...
-
Corei 7-12700(Alder Lake) と ...
-
アクティブでないアプリケーシ...
-
windows11でファイアーウォール...
-
Java 8 Updateを消去していいのか
-
アカウント名とユーザー名との...
-
VBAでのカーソル移動とマウスク...
-
マイクロソフトoffice 毎月(毎...
-
16ビット と 32 ビット
-
開いている全エクスプローラー...
-
【Chapter2】OSとアプリケーシ...
-
エラー:メモリーがwrittenにな...
-
アイコンが消えてしまった(MAC)
-
一太郎などの使用者欄の名前を...
-
basp21をWindowsServer2008R2で...
-
jwwでjwcファイルが開かない!
-
「このアプリケーションのサイ...
おすすめ情報