【VBA】ブックを閉じる3つの方法|保存して/保存しないで/ブック名で/
作成日:2022-12-02
更新日:2025-10-04

ブックを閉じる
保存して閉じる|ブックオブジェクト
' Close a given Workbook with saving; no-op if Nothing
' 渡されたWorkbookを保存して閉じる。Nothingなら何もしない
Public Sub CloseBookSave(ByVal wb As Workbook)
If wb Is Nothing Then Exit Sub
wb.Close SaveChanges:=True
End Sub保存しないで閉じる|ブックオブジェクト
' Close a given Workbook without saving; no-op if Nothing
' 渡されたWorkbookを保存せず閉じる。Nothingなら何もしない
Public Sub CloseBookDiscard(ByVal wb As Workbook)
If wb Is Nothing Then Exit Sub
wb.Close SaveChanges:=False
End Subブック名で閉じる
' Close by name with saving; silently return if not open
' 名前で保存して閉じる。開いていなければ静かに何もしない
Public Sub CloseBookByNameSave(ByVal fileName As String)
Dim wb As Workbook
On Error Resume Next
Set wb = Workbooks(fileName) ' 存在しなければ Nothing
On Error GoTo 0
If wb Is Nothing Then Exit Sub
wb.Close SaveChanges:=True
End Sub' Close by name without saving; silently return if not open
' 名前で保存せず閉じる。開いていなければ静かに何もしない
Public Sub CloseBookByNameDiscard(ByVal fileName As String)
Dim wb As Workbook
On Error Resume Next
Set wb = Workbooks(fileName) ' 存在しなければ Nothing
On Error GoTo 0
If wb Is Nothing Then Exit Sub
wb.Close SaveChanges:=False
End Sub- 保存して閉じる|Save & Close
- 保存せず閉じる|Discard & Close
- 開いていなければ何もしない|No-op when not open(メッセージなし)。
Referenced Insights
- Microsoft. (n.d.). Workbook.Close method (Excel). https://learn.microsoft.com/en-us/office/vba/api/excel.workbook.close
| Save & Close|保存して閉じる |
| Discard & Close|保存せず閉じる |
| No-op|何もしない |
| Workbook Reference|Workbook参照 |
| Name-based Lookup|名前での参照取得 |
2022-12-02
編集後記:
この記事の内容がベストではないかもしれません。
記事一覧
-

Let と Getで読み取り専用 【VBA】クラスのプロパティを読み取り専用にするLet と Getの書き方 -

[VBA]extract the filename 【VBA】フルパスからファイル名と拡張子を取得する -

[VBA]Control the calculation再計算 【VBA】指定のシートを再計算する|Calculate -

[VBA]画像として貼り付けCopyPicture 【VBA】セル範囲を画像としてコピーする|CopyPicture -

テーブルを初期化 【VBA】Excelテーブルを初期化する -

[VBA]終了のメッセージボックス 【VBA】マクロ終了時のメッセージ|タイム付きmsgbox