部分一致キーワードでシートを検索するVBAマクロ

Excelシートをスムーズにナビゲート: キーワードでシートを検索するVBAマクロの作成

Excelのワークブックに多くのシートがあるとき、特定のキーワードを含むシートをすばやく見つけることは、作業の効率を大幅に向上させることができます。今回は、キーワードでシートを検索して順にナビゲートできるVBAマクロの作成方法をご紹介します。

このマクロで実現できること

このVBAマクロを使用すると、ユーザーは特定のキーワードを含むシートを順に探すことができます。キーワードを入力すると、マクロは現在のシートの次から検索を開始し、キーワードを含む最初のシートをアクティブにします。

マクロの特徴

このマクロの主な特徴は次の通りです:

  • 前回の検索キーワードが入力ボックスの既定値として使用されます。
  • 現在のシートの次から検索が開始され、最後のシートまで検索されます。
  • 最後のシートまで検索した後、最初のシートから再検索が行われます。

コード挿入

以下のVBAマクロコードをVBAエディタの標準モジュールに貼り付けます(挿入→標準モジュール)。

Dim CurrentSheetIndex As Integer
Dim Keyword As String

Sub FindSheetWithKeyword()
    Dim i As Integer
    Dim NewKeyword As String
    
    NewKeyword = InputBox("キーワードを入力してください", "キーワード検索", Keyword)
    
    If NewKeyword = "" Then
        Exit Sub
    End If
    
    Keyword = NewKeyword
    For i = CurrentSheetIndex + 1 To Sheets.Count
        If InStr(Sheets(i).Name, Keyword) > 0 Then
            Sheets(i).Activate
            CurrentSheetIndex = i
            Exit Sub
        End If
    Next i

    ' If not found till the end, start searching from the beginning
    For i = 1 To CurrentSheetIndex
        If InStr(Sheets(i).Name, Keyword) > 0 Then
            Sheets(i).Activate
            CurrentSheetIndex = i
            Exit Sub
        End If
    Next i
    
    MsgBox "キーワードが含まれるシートは見つかりませんでした。", vbInformation
End Sub

Sub FindNextSheetWithKeyword()
    Dim i As Integer
    If Keyword = "" Then
        MsgBox "まずキーワードを入力して検索を開始してください。", vbInformation
        Exit Sub
    End If
    
    For i = CurrentSheetIndex + 1 To Sheets.Count
        If InStr(Sheets(i).Name, Keyword) > 0 Then
            Sheets(i).Activate
            CurrentSheetIndex = i
            Exit Sub
        End If
    Next i
    
    MsgBox "他にキーワードが含まれるシートはありません。", vbInformation
End Sub

実行時のユーザー操作

マクロを実行すると、ユーザーは次の操作を行います:

  1. 「FindSheetWithKeyword」マクロを実行してキーワードを入力します。

  2. キーワードを変更して再検索する場合は、再度「FindSheetWithKeyword」マクロを実行します。
  3. 同じキーワードで次のシートを探す場合は、「FindNextSheetWithKeyword」マクロを実行します。

実行後の確認事項

マクロを実行した後、ユーザーは次のことを確認できます:

  • キーワードを含む最初のシートがアクティブになっています。
  • 新しいキーワードで再検索を開始する場合、新しいキーワードで検索が行われます。

使用時の注意点

このマクロを使用する際に注意すべき点は以下の通りです:

  • 大文字と小文字は区別されません。
  • キーワードが見つからない場合、メッセージボックスが表示されます。

このVBAマクロは、多くのシートがあるExcelワークブックを効率的に管理するための強力なツールとなります。ぜひお試しください。

コメント