本ページはプロモーションが含まれています
大量のデータを管理する人におすすめ。
合致したデータに色をつける方法を紹介します。
VBAを使いますが始め方から紹介。
安心してご覧ください。
EXCEL VBAを使って合致したデータに色をつける方法
サンプルシート
サンプルシートの1つめ。
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 サンプルシート1](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/1.png)
サンプルシート2つめ。
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 サンプルシート2](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/2.png)
やる事は、
✔ サンプルシート1のA列のデータとサンプルシート2のB列を比較
✔ 合致したセルをサンプルシート1のB列で指定した色番号で塗る
✔ 色番号だけだとわかりづらいのでサンプルシート1のC列も同じ色で塗る
まずは実行してみます
やり方を説明する前に結果をお見せします。
こんな感じになります。
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 結果1](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/3.png)
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 結果2](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/4.png)
VBAの始め方
VBAやった事あるよという方は飛ばしてください。
ファイル → その他 → オプション
と進んでください。
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 ファイル → その他 → オプション](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/5.png)
リボンのユーザー設定 → 開発
開発に✔を入れたらOKで終了です。
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 リボンのユーザー設定 → 開発](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/6-1024x717.png)
これで開発メニューが使えるようになります。
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 開発メニュー](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/7-1024x152.png)
この中で一番左の「Visual Basic」をクリック。
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 Visual Basicエディター](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/8.png)
ここからVBAを入力していきます。
VBA入力:データが合致したセルに色をつける方法
VBAの入力に入ります。
挿入 → 標準モジュール
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 挿入 → 標準モジュール](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/9.png)
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 入力画面](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/10.png)
ここにVBAを書いていきます。
安心して下さい。
全部公開します。
こちらをコピー&ペーストして下さい。
Sub sample()
Dim i As Long, j As Long
Dim maxR1 As Long, maxR2 As Long
Dim ws1 As Worksheet
Dim dat1, dat2
Set ws1 = Sheets("Sheet2")
maxR1 = ws1.Cells(ws1.Rows.Count, "B").End(xlUp).Row
dat1 = ws1.Range("B1:B" & maxR1)
Application.ScreenUpdating = False
Set ws2 = Sheets("Sheet1")
maxR2 = ws2.Cells(ws2.Rows.Count, "A").End(xlUp).Row
dat2 = ws2.Range("A1:A" & maxR2)
For i = 1 To maxR1
For j = 2 To maxR2
ws2.Cells(j, 3).Interior.ColorIndex = ws2.Cells(j, 2)
If dat1(i, 1) <> "" Then
If dat1(i, 1) = dat2(j, 1) Then
ws1.Cells(i, "B").Interior.ColorIndex = ws2.Cells(j, 2)
Exit For
End If
End If
Next
Next
Application.ScreenUpdating = True
Set ws1 = Nothing
Set ws2 = Nothing
End Sub
ちなみに当プログラムはYahoo知恵袋のこちらの記事を参考にしました。
一部、機能追加など行って掲載しています。
セルに色をつける方法
セルに色をつけているところは
ws2.Cells(j, 3).Interior.ColorIndex = ws2.Cells(j, 2)
(こちらはサンプルシート1の3列目に色をつけています)
と
ws1.Cells(i, “B”).Interior.ColorIndex = ws2.Cells(j, 2)
(こちらはサンプルシート2の合致したセルに色をつけています)
です。
内容的には同じですね。
合致したデータの行で指定されている色番号の色で塗りつぶしてます。
もし塗りつぶしではなく文字色の変更をしたい場合は
Interiorの部分をFontに変更して下さい。
色番号
色番号はこちらが標準です。
見やすい色を選んでください。
1~56で指定します。
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 色番号](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/11.png)
マクロの実行方法
マクロの実行方法は開発メニューの左から2番目「マクロ」をクリック。
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 開発メニュー](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/7-1-1024x152.png)
今回はマクロが1つしかないのでそのまま実行をクリックすればOKです。
マクロの名前はVBAの最初の行。
Sub sample()
Subの後がマクロ名になってます。
自由に変更してもらって構いません。
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 マクロのリストから実行](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/12.png)
保存方法
マクロ付きのEXCELブックは拡張子.xlsmで保存します。
名前を付けて保存→ファイルの種類→Excelマクロ有効ブック
としてください。
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 名前を付けて保存](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/13.png)
ファイルを開いたとき
マクロ付きのエクセルを初めて開くとこちらの画面が出ます。
![EXCEL VBA 条件に合うデータを色分けする方法 セルの色も指定可能 マクロが無効にされました](https://seigi-ojisan1972.com/wp-content/uploads/2022/11/99.png)
コンテンツの有効化をクリックすれば大丈夫です。
ほかにもいろいろ書いてます
↓ 下記からご覧ください
サイトマップ
ブックマークして頂けると嬉しいです
よろしくお願いいたします
コメント