いくつもExcelのブックを開いているときに特定のブックを閉じたいことがあります。
ブックの名前がはっきりしている時、拡張子がわからない時、ブック名があいまいな時、アクティブブック以外の時など、VBAでブックの名前で判断して閉じる色々な方法を記録します。
< スポンサーリンク >
VBAで特定のブックを閉じるサンプル
「a.xlsm」「abc.xlsx」「def.xlsx」「ghi.xlsx」の4つのブックが開いているとします。
「abc.xlsx」のブックを閉じます。
Sub test1()
Dim wb As Workbook
For Each wb In Workbooks
If wb.Name = “abc.xlsx” Then
wb.Close
End If
Next
End Sub
拡張子が「xlsx」か「xls」かわからない時の「abc」のブックを閉じます。
Sub test2()
Dim wb As Workbook
For Each wb In Workbooks
If wb.Name Like “abc.*” Then
wb.Close
End If
Next
End Sub
ブックの名前が「a」で始まるブックを閉じます。
Sub test3()
Dim wb As Workbook
For Each wb In Workbooks
If wb.Name Like “a*” Then
wb.Close
End If
Next
End Sub
ブックの名前の途中に「a」があるブックを閉じます。
Sub test4()
Dim wb As Workbook
For Each wb In Workbooks
If wb.Name Like “*a*” Then
wb.Close
End If
Next
End Sub
アクティブブック以外のブックを閉じます。
Sub test5()
Dim wb As Workbook
For Each wb In Workbooks
If wb.Name <> ActiveWorkbook.Name Then
wb.Close
End If
Next
End Sub
こんな記事も書いています