各セルを読み込んで特定文字がある場合、背景色を黄色く強調するVBAのサンプルコード

記事内に広告が含まれています。

各セルをループで読み込んで特定文字がある場合、背景色を切り替えるVBAのサンプルを紹介します。

仕様

ボタン押下後に表内のセルを全て検索して、特定の文字を含んだ場合に背景色を切り替えます。

今回のサンプルはセル内に「か」を含んだ場合に、背景色を黄色にします。

今回1つだけ工夫した点があり、ヘッダー行は除いています。

ソースコード

Sub ボタン1_Click()

    '対象範囲を選択する(ヘッダー行は除く)
    With Range("A3").CurrentRegion
        'そのままだとA1:C7まで選択されるので、
        '行数を7行から5行へ2行減らす、かつアクティブセルをA1からA3まで2行ずらす
        .Resize(.Rows.Count - 2).Offset(2).Select
    End With

    '選択したセル範囲を全てループ
    For Each c In Selection

        If (InStr(1, c.Value, "か") > 0) Then
            '背景色を黄色にする
            c.Interior.Color = ColorConstants.vbYellow
        Else
            '背景色を白色にする
            c.Interior.Color = ColorConstants.vbWhite
        End If
    
    Next

End Sub

テスト実行

ボタンを押すと下記の通り、セル内に「か」を含んでいる場合に背景色が黄色に切り替わっています。

その他の方法

このレベルだとマクロを使用せず、Excelの機能でも可能ですので、細かな文字列の検索制御をしたい場合は下記の正規表現バージョンを使用します。

参考情報

環境

下記の環境で作成・実行しております。

No.環境バージョン
1OSWindows10
2ExcelExcel2016
環境一覧

以上です。

コメント