【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]InStr文字列確認 【VBA】指定の文字列が含まれているか & 前後の文字列を返す|InStr/InStrRev -

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

[VBA]開いているかwith FullName 【VBA】ブックが開いているか判定|StrComp で FullNameを調べる -

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

[VBA]get fso objectfrom path 【VBA】パスからfsoオブジェクトを取得する|fso.GetFolder/.GetFile -

ユーザーフォームにドラッグ&ドロップ 【VBA】ドラッグアンドドロップできるユーザーフォーム|ListView