エクセルマクロで、特定文字を含むセルを色分けするVBAコードをご紹介します。
このページのマクロコードは、コピペで使えます。
ぜひお試しください!
特定文字を含むセルを色分け(特定列)
以下のマクロを実行すると、文字ごとに背景色を一括で色分けします。
Sub 指定文字があるセルを塗り分ける()
Dim LastRow As Long
Dim i As Long
Dim Target As String
With ActiveSheet
'最終行取得
LastRow = .Cells(Rows.Count, 1).End(xlUp).Row
'1~最終行までループ
For i = 1 To LastRow
Target = .Cells(i, 1).Value
Select Case True
Case InStr(Target, "ぱいん") >= 1
Cells(i, 1).Interior.Color = 65535
Case InStr(Target, "りんご") >= 1
Cells(i, 1).Interior.Color = 15773696
Case InStr(Target, "めろん") >= 1
Cells(i, 1).Interior.Color = 5287936
Case Else
End Select
Next
End With
End Sub
マクロ実行後
A列に特定文字を含む場合、そのセルを色付けします。
[Select case] を使用して、文字によって色分けしています。
特定文字を含むセルを色分け(複数列)
以下のマクロを実行すると、指定値ごとにセルを色分けします。
Sub 指定文字列があるセルを塗り分ける()
Dim LastRow As Long
Dim LastClm As Long
Dim i As Long
Dim j As Long
Dim Target As String
With ActiveSheet
'最終行取得
LastRow = .Cells(Rows.Count, 1).End(xlUp).Row
'最終列取得
LastClm = .Cells(1, Columns.Count).End(xlToLeft).Column
'1~最終行までループ
For i = 1 To LastRow
'1~最終列までループ
For j = 1 To LastClm
Target = .Cells(i, j).Value
Select Case True
Case InStr(Target, "ぱいん") >= 1
Cells(i, j).Interior.Color = 65535
Case InStr(Target, "りんご") >= 1
Cells(i, j).Interior.Color = 15773696
Case InStr(Target, "めろん") >= 1
Cells(i, j).Interior.Color = 5287936
Case Else
End Select
Next j
Next
End With
End Sub
マクロ実行後
A列~C列について特定文字を含む場合、そのセルを色付けします。
この記事がお役に立ちますと幸いです。
・【エクセルマクロ】色付けを自動化する使用例まとめ
【エクセルマクロ】色付け処理を自動化する:超便利32選
...
「プログラマーの本気がExcelを覚醒させる 超絶ExcelVBA」
ExcelVBAでワンランクアップできる書籍
具体的で応用が利く技をたくさん掲載
リンク