【エクセルマクロ】リストにある文字列を含むか判定(動画あり)

エクセルマクロ_リストにある文字を含むか判定_アイキャッチ ExcelVBA

エクセルマクロで、リストにある文字列を含むか判定するVBAコードをご紹介します。

このページのマクロコードは、コピペで使えます。
ぜひお試しください😉

リストにある文字列を含むか判定

以下のマクロを実行すると、キーワード郡にある文字が含まれているか判定します。


Sub リストの文字があるかどうか探す()

Dim LastRow As Long
Dim SeachList() As String
Dim i As Long
Dim j As Long
        
    'E列の最終行取得
    LastRow = Cells(Rows.Count, 5).End(xlUp).Row
    j = 1
    
    'リストの文字列を配列に格納
    For i = 2 To LastRow
        ReDim Preserve SeachList(j)
        SeachList(j) = Cells(i, 5)
        j = j + 1
    Next i
    
    'A列の最終行取得
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row

  Application.ScreenUpdating = False
    
    For i = 2 To LastRow
    
        For j = 1 To UBound(SeachList)
            'リストの文字列が含まれている場合、セルの背景色を塗る
            If InStr(Cells(i, 1), SeachList(j)) > 0 Then
                Cells(i, 1).Interior.Color = 65535
            Else
                'リストの文字列が含まれていない場合、for抜ける
                If j = UBound(SeachList) Then
                    Exit For
                End If
            End If
        Next j
    Next i

  Application.ScreenUpdating = True
    
End Sub

マクロ実行前

A列の中に、E列の文字が含まれているかチェックします。


 

マクロ実行後

リストの文字を含むデータに色付けします。


 
 
この記事がお役に立ちますと幸いです。
 

VBA 2つのシートを比較して違う箇所に色付け(動画あり)
...

 

「プログラマーの本気がExcelを覚醒させる 超絶ExcelVBA」
ExcelVBAでワンランクアップできる書籍
具体的で応用が利く技をたくさん掲載