プロが教える店舗&オフィスのセキュリティ対策術

Excelの×ボタンのクリックで、変更があれば自動的に上書き保存してExcelを終了したいと思います。いまはWorkbookのBeforeCloseイベントの最後にActiveWindow.Close Savechanges:=Trueと書いてます。これだとBookは上書き保存して閉じるようですがExcelは終了しません。宜しくお願いします。

A 回答 (2件)

    • good
    • 0
この回答へのお礼

ありがとうございます。参考にさせていただきます。

お礼日時:2015/05/13 06:42

こんばんは!


一例です。

Sub Sample1()
ThisWorkbook.Save
If Workbooks.Count = 1 Then
Application.Quit
Else
ThisWorkbook.Close
End If
End Sub

※ 余計なお世話かもしれませんが、複数のBookを開いている場合は
コードを記入しているBookだけを閉じるようにしてみました。m(_ _)m
    • good
    • 0
この回答へのお礼

ありがとうございました。通常の操作でExcelのBookをふたつ起動すると同一Excelウィンドウ内で開きます(使いづらいのでこういう使い方はあまりしないのですが)。タスクバーに表示されているExcelのアイコンにマウスポイントを置くと開いているふたつのBookが見えるので閉じたい方のBookの×ボタンをクリックするとふたつとも終了してExcelのウィンドウだけが残りました。両方のBookにマクロが記述してあるので、教えて頂いた「コードを記入しているBookだけを閉じるように」には合致するのですが、目的以外のBookも閉じExcelは終了しないという結果でした。わたしの操作方法に問題があったのでしょうか。

お礼日時:2015/05/12 06:02

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