Excelで複数の色を条件にデータをフィルターする2つの簡単な方法
この記事では、Microsoft Excelで複数の色を条件にデータをフィルターする方法を解説します。通常、特定の列を複数の色でフィルターすると、他の列も最初に適用したフィルターの影響を受けてしまい、思い通りの結果が得られないことがあります。色による複数条件のフィルタリングは少し工夫が必要ですが、この記事では誰でも実践できる2つの方法を、わかりやすい手順とともに紹介します。
Excelで複数の色を条件にフィルターする2つの方法
ここでは、営業担当者の氏名、担当地域、売上高がそれぞれB列・C列・E列に入力されたサンプルデータセットを使用します。このデータには、セルごとに異なる色が設定されています。VBAでユーザー定義関数を作成する方法と、色コード(カラーインデックス)を手動で利用する方法の2通りで、複数の色によるフィルタリングを行います。まずはデータセット全体像をご確認ください。

方法1:色コードを使って複数の色でフィルターする
この方法では、Excel標準の機能だけで複数の色によるフィルタリングを行います。そのためには、各セルに設定された色コードを把握しておく必要があります。たとえば、赤は「3」、黄色は「6」、緑は「14」といった具合です。以下の手順に従って、複数の色でフィルターしてみましょう。
ステップ1:
- まず、データセット内の任意のセルを選択し、リボンの「データ」タブから「フィルター」コマンドをクリックしてフィルターを適用します。

- すると、各列見出しにフィルター用のドロップダウン矢印が表示されます。

- 次に、対象列(C列)のドロップダウン矢印をクリックし、「色フィルター」から該当する色(赤・黄・緑)にチェックを入れて、最後に「OK」を押します。

- これで、下のスクリーンショットのように、複数の色を条件としたフィルタリングが完了します。

ステップ2:
- 並べ替え機能を使っても同様の結果が得られます。対象列のドロップダウン矢印をクリックし、「色順に並べ替え」→「ユーザー設定の並べ替え」を選択します。

- 「並べ替え」ダイアログボックスが表示されます。「最優先されるキー」で対象列(例:Region)を選択し、「並べ替えキー」で「セルの色」、「順序」で「赤」などを指定します。さらに「レベルの追加」をクリックすれば、複数の色を優先順位付きで指定できます。

- 下のスクリーンショットのように「レベルの追加」で条件を重ねて設定し、最後に「OK」を押します。

- これで、ユーザー設定の並べ替えを使った複数色での整理・抽出が完了します。結果は下のスクリーンショットの通りです。

関連記事: Excelで色を条件にフィルターする方法(2つの例)
方法2:VBAコードで複数の色をフィルターする
続いて、シンプルなVBAコードでユーザー定義関数を作成し、D列の各セルに設定された色インデックス番号を取得する方法を紹介します。取得した色インデックスをもとに、D列を複数の色でフィルターします。以下の手順に従って進めてください。
ステップ1:
- まずモジュールを開きます。「開発」タブから次の場所へ移動してください。
開発 → Visual Basic

- Visual Basicをクリックすると、「Microsoft Visual Basic for Applications」というウィンドウが開きます。このウィンドウでVBAコードを記述するためのモジュールを挿入します。メニューから以下を選択してください。
挿入 → 標準モジュール

- 挿入したモジュールに、以下のVBAコードを入力します。この関数は、指定したセルの塗りつぶし色のインデックス番号を返します。
Function FindColor(n As Range) As Integer
FindColor = n.Interior.ColorIndex
End Function

- コードを入力したら、VBAを実行します。メニューから以下を選択してください。
実行 → Sub/ユーザーフォームの実行

ステップ2:
- ワークシートに戻り、新しく作成した関数を使います。セルE5に以下の数式を入力してEnterキーを押してください。使用するユーザー定義関数は次の通りです。
=FindColor(D5)
- 数式を入力すると、セルD5の色インデックスが表示されます。続けて、オートフィルハンドル(+)を使ってD列の残りの色付きセルにも数式をコピーしましょう。

- 次に、ショートカットキーCtrl + Shift + Lでデータセットにフィルターを適用します。E列のフィルター矢印をクリックし、色インデックス3、6、14など対象の番号のみにチェックを入れて、最後に「OK」を押します。

- これで、VBAコードを使った複数色でのフィルタリングが完了しました。結果は下のスクリーンショットの通りです。

関連記事: Excelで複数の列を色でフィルターする方法(2つの方法)
覚えておきたいポイント
➜ データのフィルターはショートカットキーCtrl + Shift + Lでも素早く適用できます。
➜ 「開発」タブが表示されていない場合は、Alt + F11を押すことでVBE(Visual Basic Editor)を直接開くことができます。
まとめ
今回は、Excelで複数の色を条件にフィルターする2つの実践的な方法を紹介しました。色コードを活用する方法も、VBAでユーザー定義関数を作る方法も、日々のデータ分析作業の効率を大きく向上させてくれるはずです。ぜひ自分のスプレッドシートで試してみてください。ご不明な点や質問がある場合は、お気軽にコメント欄でお知らせください。その他のExcel活用術については、ExcelDemyのサイトもぜひご覧ください。
関連記事
- Excelの条件付き書式で色を条件にフィルターする方法
- Excelで色とテキストを組み合わせてフィルターする方法(簡単な手順)
- Excelで色フィルターを解除する方法(5つの方法)
-
Excelで依存関係をトレースする2つの簡単な方法
Excelでデータを扱う際、依存関係のトレース(Trace Dependents)の使い方を知っておくことは非常に重要です。あるセルの値が他のどのセルに依存しているのかを把握できれば、ワークブック全体の構造理解やトラブルシューティングが格段にしやすくなります。この記事では、Excelで依存関係をトレースする2つの簡単で実用的な方法を解説します。 練習用ワークブックをダウンロードして、実際に手を動かしながら試してみてください。 Excelで依存関係をトレースする2つの方法 ここでは、「ABC商事の上半期売上」というサンプルデータセットを使用します。データは3列構成で、列B・C・Dにはそれぞれ月・
-
Excelでセルの色を基準にフィルターする2つの簡単な方法
Excelでは、目的に応じてさまざまな色でセルを塗りつぶすことがよくあります。ワークシート内で色を使ってデータの種類を区別しており、特定の色が付いたセルだけを抽出・選択したい場合、この記事が役立ちます。ここでは、Excelでセルの色を基準にフィルター処理を行う方法をわかりやすく解説します。 理解を深めながら実際に練習できるよう、サンプルのExcelブックをダウンロードしてご利用ください。 Excelでセルの色別にフィルターする2つの便利な方法 以下の2つの方法では、「フィルター」コマンドと「検索」コマンドを使用して、セルの色を基準にデータを絞り込む手順を学べます。記事内では、異なる色を付け