エクセルVBAで条件に一致する複数セルを見つけて背景色の変更方法

エクセル検索
HOMEUserForm印刷画面ファイル図形
日付・時刻データセル関数VBA関数

表の中で特定の値を目立たせるためにセルの背景色を変更したいと思った事ありませんか?

Excel-VBAを使えば、一瞬で見つけ出して目立つように色を変更することができるFont.ColorIndexと条件分岐のIFステートメント、さらに繰り返し処理を行うFor~Nextを組み合わせた方法ご紹介します。

ColorIndexとFor~Next

Excel-VBAを使わずに表の中で条件に合ったセルの値の文字色を変更することもでき、ワークシート上で【ホーム】➡【条件付き書式】➡【新しいルール】で条件設定したい全てのセルに設定できますが、複数となるとめんどくさいし大変ですよね。

そこでExcel-VBAを使って、ユーザーフォームに配置したコマンドボタンにVBAコードを書きこんでおけば、ボタン1回押すだけでできるので効率的ですし簡単です。

ここでやりたいことは、条件に一致したセルを繰り返し探してVBAで背景色を変える事なので、複数のセルをそれぞれ条件に合っていれば、うすピンク背景色に変更、そうでない場合は白色背景色に変更するという事です。

VBAコード

Private Sub CommandButton2_Click()
For i = 1 To 10
If Cells(i, 1).Value = “3” Then
Cells(i, 1).Interior.ColorIndex = 38
Else
Cells(i, 1).Interior.ColorIndex = 2
End If
Next i
End Sub

解説
  1. コマンドボタン1がクリックされたら
  2. 繰り返し処理の変数「i」を宣言し変数は1~10
  3. Ifステートメントでセル(i行の1列)の値が3だったら
  4. セル(i行の1列)の背景色は色番号38にする
  5. そうでなかったら
  6. セル(i行の1列)の背景色は色番号2にする
  7. Ifステートメント終了
  8. 繰り返す
  9. マクロ記録終了

というVBAコードで繰り返し指定した行の値を探して条件に合致すれば、背景色を変えてくれます。

波乗りアヒル

エクセルVBAで使用できる主な色見本に関しては下記をご覧ください。

関連記事

どこかにビューーン
ちょっとの工夫で往復無料の時代が来た!!

新着ページ

よく見られているページ

大容量無料ファイル転送サービス【ACデータ】 無料イラスト【イラストAC】

紅葉スポット

2024年5月11日からマイルと楽天ポイントとの相互交換提携開始!

交換レート0.5:1なので半分になってしまいますが、使い方次第で実質3倍の価値まで引き上げられる方法です。