【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
編集後記:
この記事の内容がベストではないかもしれません。
記事一覧
-

シート名でシート取得 【VBA】シートをシート名で取得する|Worksheets(name) -

文字の位置を取得 【VBA】文字列から指定文字の位置を取得する|InStr/InStrRev -

時間計算のDateAdd 【VBA】DateAddで時間の足し算・引き算 -

クラスでForEachを使いたい 【VBA】クラスで通常のCollection機能を利用する準備|ForEachが使えない -

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

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