【VBA】開いている全ブックを完全一致で抽出する方法
日々の業務で、大量のExcelファイルの中から特定のファイルを見つけるのは大変な作業です。この記事では、開いているすべてのワークブックから完全一致で指定した名前のファイルを効率的に抽出する方法を紹介します。
サンプルコード
VBA
Option Explicit
Sub ExtractWorkbookByName()
Dim wb As Workbook, targetName As String
Dim foundWb As Workbook
' 完全一致のワークブック名を指定
targetName = "完全一致で抽出したいワークブック名"
For Each wb In Application.Workbooks
If wb.Name = targetName Then
Set foundWb = wb
Exit For
End If
Next wb
' 抽出されたワークブックを表示
If Not foundWb Is Nothing Then
MsgBox "指定のワークブック名: " & targetName & " が見つかりました。", vbInformation, "抽出完了"
Else
MsgBox "指定のワークブック名: " & targetName & " は開いていません。", vbExclamation, "未発見"
End If
End Subよくある質問
Q 元に戻せますか?
A.
VBAの実行結果は「元に戻す」が効きません。必ずバックアップを取ってから実行してください。
Q エラーが出たら?
A.
指定されたワークブック名が間違っていないことを確認してください。