• ベストアンサー

Excelマクロ ボタンをクリックするだけで、保存せずにシートを閉じる

こんにちは やっと勉強する気になった超初心者です 表題の通りなのですが 1、コマンドボタンをクリック 2、Bookを保存せずに閉じる という作業をしたいのですが 記録ではできない・・・と思いますので どなたかご教授下さい

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

  • ベストアンサー
  • masa_019
  • ベストアンサー率61% (121/197)
回答No.6

単純に、自ブックの標準モジュールのマクロから 自ブックを閉じてエクセルを終了させられれば 良いのですよね? 他に開いているブックは無いものとして、 Sub Macro1() ThisWorkbook.Saved = True Application.Quit ThisWorkbook.Close End Sub だけで良いのでは?

yukinojyou7
質問者

お礼

回答ありがとうございます できました!! ありがとうございます

すると、全ての回答が全文表示されます。

その他の回答 (5)

  • o_chi_chi
  • ベストアンサー率45% (131/287)
回答No.5

Application.DisplayAlerts = False Application.Quit でOKです。 2行目だけで(ブックも含めて)EXCELを終了しますが未保存の ブックがある場合保存確認ダイアログが表示されます。 それを回避するために1行目を設定しています。

yukinojyou7
質問者

補足

Sub タイトル() ' ' タイトル Macro ' マクロ記録日 : 2006/4/10 ユーザー名 : yukinojyou ' Application.DisplayAlerts = False Workbooks.Close Application.DisplayAlerts = False Application.Quit End Sub としたのですが、やっぱりExcelは終了しません 何度も申し訳ないのですが、ご教授下さい

すると、全ての回答が全文表示されます。
  • o_chi_chi
  • ベストアンサー率45% (131/287)
回答No.4

#2です。 Workbooks.Close の後に Application.Quit を実行しようとしていませんか? 下記でEXCELも終了すると思いますが。 --- Application.DisplayAlerts = False Application.Quit

yukinojyou7
質問者

補足

度々すいません Application.DisplayAlerts = False Workbooks.Close Application.DisplayAlerts = False Application.Quit とすれば良いのでしょうか??

すると、全ての回答が全文表示されます。
noname#187541
noname#187541
回答No.3

こんにちは。 A.xlsを保存せずに閉じます。 Workbooks("A.xls").Close False ブックを閉じるには Close  〃 保存するには Save 等ををつかいます。これらをヘルプで調べて勉強してください。

すると、全ての回答が全文表示されます。
  • o_chi_chi
  • ベストアンサー率45% (131/287)
回答No.2

Bookを閉じるのなら Application.DisplayAlerts = False Workbooks.Close ですがEXCELが残ります。 EXCELも終了なら Application.Quit

yukinojyou7
質問者

補足

Excelも終了したいのですが Application.Quitを最後に付け加えても 残ってしまいます どうすればいのでしょうか?

すると、全ての回答が全文表示されます。
  • kokorone
  • ベストアンサー率38% (417/1093)
回答No.1

Sub quit_click() If MsgBox("保存しないで終了します。 よろしいですか?" & Chr(13) & Chr(13) & _ "[はい]=破棄終了 / [いいえ]=メニューに戻る" & Chr(13), vbQuestion + vbYesNo, MSG_TITLE) = vbNo Then GoTo Menu Application.DisplayAlerts = False '警告メッセージ回避 ActiveWorkbook.RunAutoMacros xlAutoClose 'Auto_close実行(VBAでブックを閉じる場合には必要) Call 終了 '終了処理 End 'Excel 97 ABEND回避用 End Sub Sub 終了() Dim wk_chk As Boolean, wb As Variant wk_chk = True For Each wb In Workbooks If wb.Name = ThisWorkbook.Name Or wb.Name = "PERSONAL.XLS" Then Else wk_chk = False 'このブック又は"PERSONAL.XLS"以外のブック存在時のみ False セット End If Next If wk_chk = True Then Application.Quit 'このブック(と"PERSONAL.XLS")のみ存在の場合、Excel終了 Else ActiveWorkbook.Close '他のブックが存在する場合、このブックのみ終了 End If End Sub こんなところでしょうか?

すると、全ての回答が全文表示されます。

関連するQ&A