Excel でのデータのフィルター処理 – 簡単かつ包括的
Excel のフィルター機能を使えば、選択範囲内のデータやテーブルを簡単に絞り込み、必要な情報だけを表示してそれ以外を非表示にできます。組み込みの演算子を利用して、特定の数値より大きい値、特定の文字や単語で始まる・終わる・含むテキスト、あるいは特定の日付より前または後の期限日を持つ行など、数値・テキスト・日付をスピーディーにフィルターできます。データやテーブルにフィルターを適用した後、データが更新された場合は、フィルターを再適用して最新の情報を反映するか、フィルターをクリアしてすべてのデータを再表示できます。
本チュートリアルでは、Excel でフィルターを追加・活用・削除する方法をわかりやすく解説します。さらに、フィルター機能を強化して、より複雑なExcel の課題にもスマートに対応する方法もご紹介します。
目次:[ 非表示 ]
1。Excel でグループを追加する方法
選択範囲内のデータやテーブルをフィルターするには、まずデータにグループを追加する必要があります。本セクションでは、Excel でグループを追加するための3 つの方法をご紹介します。
1.1 データタブのフィルターコマンド
フィルターを追加したい範囲またはテーブル内の任意のセルを選択し、「データ」メニューから「フィルター」をクリックしてください。

1.2 ホームタブのフィルターコマンド
フィルターを追加したい範囲またはテーブル内の任意のセルを選択し、「ホーム」タブの「並べ替えとフィルター」から「フィルター」をクリックします。

1.3 ショートカットキーによるグループの追加
フィルターを追加したい範囲またはテーブル内の任意のセルを選択し、「Ctrl」+「Shift」+「L」キーを押してください。
上記のいずれかの操作を実行すると、選択したセルの列見出しにドロップダウン矢印が追加されていることを確認できます。

2。Excel でフィルターを適用する方法(単一条件または複数条件)
フィルターを追加した後は、手動で適用する必要があります。本セクションでは、Excel で1 列または複数列にフィルターを適用する方法をご紹介します。
2.1 1 列にフィルターを適用する(単一条件)
1 列にのみフィルターを適用したい場合(たとえば、以下のスクリーンショットのように列 C のデータをフィルターするなど)、その列に移動して、次の手順を実行してください。
- 1) 列見出しのドロップダウン矢印をクリックしてください。
- 2) 必要に応じて、フィルター条件を設定してください。
- 3) 「OK」ボタンをクリックして、フィルタリングを開始してください。スクリーンショットをご参照ください。

これで列 C にフィルターが適用され、条件に一致するデータのみが表示され、それ以外は非表示になります。
フィルターを適用すると、ドロップダウンの矢印がフィルターアイコン
に変わります。
フィルターアイコンにカーソルを合わせると、指定したフィルター条件が以下のスクリーンショットのようにスクリーンチップとして表示されるので、とても便利です。フィルターに設定した条件を忘れてしまったら、アイコンにカーソルを合わせるだけで確認できます。

2.2 複数列に複数条件でフィルターを適用する(複数条件)
複数列に複数の条件でフィルターをかけたい場合は、上記の方法を各列に1 つずつ繰り返してください。
複数の列にフィルターを適用すると、フィルターがかけられた列のドロップダウン矢印がフィルターアイコンに変わっていることを確認できます。

上記の方法では、列ごとに個別にフィルターを適用する必要があり、さらに重要なのは、「AND」条件しかサポートされない点です。ここでは、複数の列に同時にフィルターを適用でき、「AND」条件と「OR」条件の両方を利用できる方法をご紹介します。
以下のようなスクリーンショットのデータテーブルがあるとします。「製品 = AAA-1」かつ「注文数 > 80」、または「合計金額 > 10,000」の条件に基づいて、複数列からデータをフィルターしたい場合、以下のいずれかの方法を試して実現してください。

2.2.2.1 高度なフィルター機能で複数列にフィルターを適用する
高度なフィルター機能でこの問題を簡単に解決できます。以下の手順に従って操作してください。
1。まず、以下のスクリーンショットのようにワークシートに条件を設定します。

注:「AND」条件の場合は、各条件値を同じ行の異なるセルに入力してください。「OR」条件の値は、それぞれ別の行に配置します。
2。「データ」>「詳細設定」をクリックして、「高度なフィルター」機能を有効化してください。

3。「高度なフィルター」ダイアログボックスで、以下のように設定してください。

これで、指定された条件に基づき、以下のスクリーンショットのように各列が同時にフィルターされました。

2.2.2.2 便利なツールで複数列に簡単にフィルターを適用する
上記の方法では「AND」と「OR」のフィルタ条件を管理するのは簡単ではありません。そこで、ぜひ「Kutools for Excel」の「スーパーフィルター」機能をご活用ください。この機能を使えば、Excel で「AND」と「OR」の両方の条件を複数列に簡単に適用できます。
1。Kutools for Excel をインストール後、「KUTOOLS PLUS」メニューから「スーパーフィルター」をクリックしてください。

すると、「スーパーフィルター」ペインがワークシートの右側に表示されます。
デフォルトでは、「スーパーフィルター」ペインに、OR 関係で接続された空白の条件グループが2 つ追加されています。各グループ内にある条件同士は AND 関係で評価されます。必要に応じて、グループ間の関係を変更することも可能です。

2。「スーパーフィルター」ペインで、フィルタ条件を次のように設定してください。
ボタンをクリックしてフィルターをかける元の範囲またはテーブルを選択します。ヒント:最初のドロップダウンリストは列見出し用、2 番目はフィルタの種類用(「テキスト」、「数値」、「日付」、「年」、「テキスト形式」などを選択可能)、3 番目は条件の種類用、最後のテキストボックスは条件の値を入力するためのものです。
上記の例のように、ここでは3 つのドロップダウンリストからそれぞれ「製品」>「テキスト」>「等しい」を選択し、テキストボックスに「AAA-1」と入力してください。スクリーンショットをご参照ください。


これにより、元のデータ範囲に一致するデータのみが表示され、それ以外は非表示になります。スクリーンショットをご参照ください。

ヒント:この便利な機能を使えば、グループ内にさらに条件を追加したり、新しいグループを追加したり、現在のシナリオを将来の使用のために保存したりできます。作業時間を大幅に節約し、業務効率を高めるのに欠かせないツールです。
Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
3。Excel でフィルターを活用する方法
本セクションでは、テキスト、数値、日付、書式など、さまざまなデータ型のフィルター方法を学びます。
3.1 テキスト値のフィルター
3.1.1 特定の条件(~で始まる、~で終わる、~を含むなど)でテキストセルをフィルターする
実際、「テキストフィルター」という組み込みのフィルター演算子には、テキストを簡単に絞り込める便利な条件が多数用意されています。たとえば、特定の文字(例:J)で始まるセルをフィルターしたい場合は、以下の手順に従ってください。
1。元のデータ範囲の列見出しにフィルターを追加します。列見出しにフィルターを追加する方法については、こちらをクリックしてください。
2。見出しセルのドロップダウン矢印をクリックして、フィルターメニューを展開します。
3。「テキストフィルター」>「~で始まる」をクリックします。

4。「ユーザー設定オートフィルター」ダイアログボックスで、テキストボックスに特定の文字(例:「J」)を入力し、「OK」をクリックします。
ヒント:必要に応じて、「And」または「Or」の条件をさらに追加できます。

これで、以下のスクリーンショットのように、列 D に「J」で始まるすべてのセルが表示されます。

組み込みのフィルター演算子を使えば、特定の条件に基づいてテキストセルを簡単に絞り込めるように思えます。しかし、Excel のフィルター機能は大文字と小文字を区別したテキストの絞り込みをサポートしていません。では、Excel で大文字と小文字を区別するフィルターをどのように実行すればよいでしょうか?このセクションでは、その方法をご紹介します。
3.1.2.1 数式とフィルターコマンドで大文字と小文字を区別を含む特定のテキストをフィルターする
たとえば、B 列にある「TEXT TOOLS」などの特定のテキストをすべて大文字でフィルターしたい場合は、以下の手順に従ってください。

1。元のデータ範囲の隣にヘルパー列を作成します(ここでは D 列をヘルパー列として使用します)。2 行目のセルに以下の数式を入力し、「Enter」キーを押してください。結果が表示されたセルを選択して「オートフィルハンドル」を下にドラッグし、他の結果を取得します。
=EXACT(B2,UPPER(B2)) 注:この数式は、セル内の文字がすべて大文字かどうかを判別するのに役立ちます。セルに含まれる文字がすべて大文字の場合、「TRUE」を返し、それ以外の場合は「FALSE」を返します。

2。B 列と D 列を選択します(このとき C 列も選択されますが、問題ありません)。「データ」>「フィルター」をクリックして、これらの列にグループの追加を適用します。
3。B 列(フィルター対象のテキストを含む列)に移動し、次のように設定します。

これで、B 列には「text tools」の大文字および小文字のみが表示されます。

4。D 列のドロップダウン矢印をクリックし、「すべて選択」のチェックを外して「TRUE」項目の横にあるチェックボックスにチェックを入れ、その後「OK」ボタンをクリックします。

すると、B 列内の「text tools」というテキストがすべて大文字で、以下のスクリーンショットのようにフィルターされます。

3.1.2.2 素晴らしいツールで大文字と小文字を区別を含むセルを簡単にフィルターする
列内ですべて大文字または小文字のテキストだけをフィルターしたい場合は、「Kutools for Excel」の「特殊フィルタ」機能がおすすめです。この機能を使えば、わずか数回のクリックで、すべて大文字または小文字のテキストを簡単に抽出できます。
1。テキストをフィルターしたい列範囲を選択し、「KUTOOLS PLUS」>「特殊フィルタ」>「特殊フィルタ」をクリックします。

2. 「特殊フィルタ」ダイアログボックスで、次のように設定してください。

3。その後、「Kutools for Excel」ダイアログボックスが表示され、何個のセルが見つかりフィルターされるかが通知されます。「OK」ボタンをクリックしてください。
これで、すべて大文字または小文字のセルが、以下のスクリーンショットのように即座にフィルターされます。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
テキストの長さでセルをフィルターしたい場合(たとえば、テキストが10 文字のセルのみを抽出するなど)、次の3 つの方法が役立ちます。
3.1.3.1 フィルターコマンドでテキストの長さに基づいてセルをフィルターする
実は、フィルターコマンドにはこの問題を解決するための組み込み演算子が用意されています。以下の手順に従ってください。
1。フィルターを適用したいセル範囲(ここでは B1:B27)を選択し、「データ」メニューから「フィルター」をクリックして、この列にフィルターを追加します。
2。列ヘッダーのドロップダウン矢印をクリックし、「テキストフィルター」→「フィルタ条件の設定」を選択してください。スクリーンショットをご参照ください。

3。「カスタム自動フィルター」ダイアログボックスで、条件を「等しい」に設定し、テキストボックスにパターンとして疑問符(?)を10 個入力して、「OK」ボタンをクリックします。 3。「カスタム自動フィルター」ダイアログボックスで、条件を「等しい」に設定し、テキストボックスにパターンとして疑問符(?)を10 個入力して、「OK」ボタンをクリックします。
ヒント:これらの10 個の疑問符は、長さが10 のテキスト文字列に一致することを示します。

これにより、スペースを含めて文字列の長さが10 であるすべてのセルが即座にフィルターされます。

3.1.3.2 数式とフィルターコマンドでテキストの長さに基づいてセルをフィルターする
また、LEN 関数を使って各セルのテキスト文字列の長さを計算し、その結果に基づいて「フィルター」コマンドで必要なテキスト長のセルを絞り込むこともできます。
1。元のデータ範囲の隣にヘルパー列を挿入し、次の数式を入力して「Enter」キーを押してください。その後、結果が表示されたセルを選択し、「オートフィルハンドル」を下方向にドラッグして、他のセルにも結果を適用します。
=LEN(B2) 
これで、指定した列の各セルにあるテキストの長さを取得できます。
2。ヘルパー列(ヘッダーを含む)を選択し、「データ」>「フィルター」をクリックして、フィルターを適用しましょう。
3。ドロップダウン矢印をクリックして「すべて選択」のチェックを外し、すべての項目の選択を解除した後、数字10 の横にあるチェックボックスのみにチェックを入れ、「OK」ボタンをクリックします。

これで、文字列の長さがスペースを含めて10 であるテキストのセルがすべて即座にフィルターされます。

3.1.3.3 素晴らしいツールでテキストの長さに基づいてセルを簡単にフィルターする
ここでは、「Kutools for Excel」の「特殊フィルタ」機能を使えば、Excel でテキストの長さに基づいてセルを簡単にフィルターできることをおすすめします。
1。特定のテキストの長さに基づいてセルをフィルターする列範囲を選択し、「KUTOOLS PLUS」>「特殊フィルタ」>「特殊フィルタ」をクリックしてください(スクリーンショット参照)。

2。「特殊フィルタ」ダイアログボックスで、次のように設定してください。

3。「Kutools for Excel」ダイアログボックスが表示され、何個のセルが見つかりフィルターされるかが通知されます。「OK」をクリックして続行してください。
すると、文字列の長さが10 に等しいすべてのセルが、以下のスクリーンショットのようにフィルターされます。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
3.2 数値をフィルターする
Excel では、「数値フィルター」コマンドを使えば、数値を簡単にフィルターできます。
たとえば、列(以下のスクリーンショットの C 列など)で数値が15,000 から20,000 の範囲にあるセルをフィルターしたい場合は、次の手順で簡単に実現できます。

1。フィルターをかけたい数値が含まれる列範囲を選択し、「データ」>「フィルター」をクリックしてフィルターを適用します。
2。グループを追加したら、以下のように設定してください。

ヒント:数値が15000 から20000 の間にあるセルをフィルターしたいので、ここでは15000 と20000 をそれぞれテキストボックスに入力しています。

これで、数値が15,000 から20,000 の間にあるセルが、以下のスクリーンショットのようにフィルターされます。

3.3 日付をフィルターする
既定では、組み込みの「日付フィルター」機能で日付を絞り込むための多くの一般的な条件が提供されています。ただし、週、週末、または平日で日付をフィルターするための組み込みオプションは用意されていません。このセクションでは、こうした操作を実現する方法をご紹介します。

以下のスクリーンショットのようなデータテーブルがある場合、日付を「平日」または「週末」でフィルターしたいときは、次のいずれかの方法をご利用ください。

3.3.1.1 数式とフィルターコマンドで週または週末で日付をフィルターする
このセクションでは、WEEKDAY 関数を使って各日付が属する曜日を取得し、その後、必要な週または週末だけを抽出するためのフィルターを適用します。
1。空白セル(この例では D2)に以下の数式を入力し、「Enter」キーを押してください。その後、結果セルを選択して「オートフィルハンドル」を下のセルにドラッグし、この数式を適用します。
=WEEKDAY(A2) ヒント:

注:ご覧のとおり、この数式は「1」から「7」までの数値を返します。これは、「日曜日」から「土曜日」までの週を示しています(1 は日曜日、7 は土曜日を表します)。
2。数式の結果全体(ヘッダーセルを含む)を選択し、「データ」>「フィルター」をクリックしてください。
3。ドロップダウンの矢印をクリックし、「すべて選択」チェックボックスのチェックを外してください。

これで、すべての週末または特定の週のセルがフィルターされます。スクリーンショットを参照してください:

3.3.1.2 素晴らしいツールで週または週末で日付を簡単にフィルターする
上記の方法が不便に感じられる場合は、「Kutools for Excel」の「特殊フィルタ」機能をぜひご活用ください。このユーティリティを使えば、任意の週を含むセルをわずか数回のクリックで簡単にフィルターできます。
1。特定の週に基づいてフィルターをかけたい日付が含まれるセルを選択します。
2。「KUTOOLS PLUS」>「特殊フィルタ」>「特殊フィルタ」をクリックしてください。

3。「特殊フィルタ」ダイアログボックスで、次のように設定してください。

4。その後、「Kutools for Excel」ダイアログボックスが表示され、何個のセルが見つかりフィルターされるかが通知されます。「OK」をクリックして続行してください。
これで、すべての週末または任意の週のセルがフィルターされます。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
セルを週や週末でフィルターするだけでなく、「Kutools for Excel」の「特殊フィルタ」機能を使えば、営業日でセルをフィルターすることも可能です。
1。上記と同じ手順を適用して、「特殊フィルタ」ユーティリティを有効にしてください。
2。「特殊フィルタ」ダイアログボックスで、以下の設定を行います。

3。その後、「Kutools for Excel」のダイアログボックスが表示されます。「OK」をクリックして続行します。
これで、すべての営業日のセルがフィルターされました。

3.4 書式でフィルタリング
通常、Excel では以下スクリーンショットのように、フォントの色やセルの塗りつぶし、アイコンセットなどの視覚的要素に基づいてデータをフィルターできます。

ただし、太字や斜体などのフォントスタイル、取り消し線などのフォント効果、あるいは数式を含む特殊なセルなど、その他の視覚的基準に基づいてデータをフィルターしたい場合は、Excel では直接対応できません。このセクションでは、こうした課題を解決するための方法をご紹介します。
以下のスクリーンショットのように、太字または斜体で書式設定されたテキストに基づいてデータをフィルターしたい場合は、次の手順に従って対応できます。

3.4.1.1 数式とフィルター機能で太字のフォントを持つセルをフィルタリング/斜体で書式設定されたテキストを
Get.Cell 関数とフィルター機能を組み合わせれば、列範囲内で太字フォントが適用されたセルを、書式設定されたテキストとしてフィルタリングできます。
1。「数式」タブの「名前の定義」をクリックします。

2。「新しい名前」ダイアログボックスで、次の操作を行ってください。
=GET.CELL(20,$B2) =GET.CELL(21,$B2) 
数式の構文:
=GET.CELL(type_num, reference)
数式の引数
3。B2 と同じ行にある空白セルを選択し、以下の数式を入力して「Enter」キーを押します。結果セルを選択し、「オートフィルハンドル」を下方向にドラッグしてこの数式を適用します。
=Filter_Bold_Cells 
4。ヘッダーを含むすべての結果セルを選択し、「データ」タブの「フィルター」をクリックします。
5。ドロップダウン矢印をクリックし、「TRUE」オプションの横にあるチェックボックスだけをオンにして、「OK」をクリックします。

これで、太字または斜体のテキストを含むすべてのセルがフィルターされました。スクリーンショットをご確認ください。

3.4.1.2 「太字のフォントを持つセルをフィルタリング」機能とフィルター機能で太字または斜体で書式設定されたテキストを
「検索と置換」機能とフィルター機能を組み合わせることでも、この目的は達成できます。
1。フィルターしたい太字または斜体のテキストを含む列範囲を選択し、「Ctrl」+「F」キーを押します。
2。「検索と置換」ダイアログボックスで、以下のように設定してください。



3。これで元の範囲内のすべての太字または斜体のテキストが含まれるセルが選択されます。「ホーム」タブ>「塗りつぶし色」をクリックし、選択したセルに塗りつぶし色を適用します。

4。再度、列の範囲全体を選択し、「データ」タブ>「フィルター」をクリックしてフィルターを追加します。
5。ドロップダウン矢印をクリックして「色でフィルター」を選択し、「セルの色でフィルター」の下に表示される、先ほど指定した塗りつぶし色をクリックしてください。スクリーンショットをご覧ください:

これで、太字または斜体のテキストを含むすべてのセルがフィルターされました。

3.4.1.3 驚異的なツールで太字または斜体で書式設定されたテキストを簡単に太字のフォントを持つセルをフィルタリング
前述の通り、「Kutools for Excel」の「特殊フィルタ」ユーティリティを使えば、大文字と小文字を区別したフィルターやテキストの長さによるフィルター、日付のフィルターなどを簡単に実行できます。ここでは、この機能を使って、Excel で太字または斜体に書式設定されたセルのうち、太字フォントを持つセルをフィルタリングする方法をご紹介します。
1。フィルターをかけたい太字または斜体のセルが含まれる列範囲(ヘッダーを含む)を選択します。
2. 「KUTOOLS PLUS」>「特殊フィルタ」>「太字のフォントを持つセルをフィルタリング」または「イタリック体のフォントを持つセルをフィルタリング」をクリックしてください。スクリーンショットをご参照ください:

3。「Kutools for Excel」のダイアログボックスが表示されたら、「OK」をクリックして続行します(このダイアログボックスには、条件に一致するセルの件数が表示されます)。
これで、太字または斜体で書式設定されたテキストを含むセルがすべてフィルターされました。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
取り消し線付きで除外された人物のリストを受け取り、フィルター機能を使ってすべての取り消し線が付いたセルを抽出したい場合は、以下の方法で対応できます。
3.4.2.1 ユーザー定義関数とフィルター機能で取り消し線のあるセルをフィルタリングで書式設定されたテキストを
ユーザー定義関数を適用して取り消し線付きのテキストセルを識別し、その結果に基づきフィルター機能ですべての取り消し線付きセルを絞り込むことができます。
1。「Alt」+「F11」キーを押して、「Microsoft Visual Basic for Applications」ウィンドウを開きましょう。
2。「Microsoft Visual Basic for Applications」ウィンドウで、「挿入」>「モジュール」をクリックし、表示されたコードウィンドウに以下の VBA コードをコピーしてください。
Function HasStrike(Rng As Range) As Boolean
HasStrike = Rng.Font.Strikethrough
End Function 
3。「Alt」+「Q」キーを押して、「Microsoft Visual Basic for Applications」ウィンドウを閉じましょう。
4。空白セル(計算対象セルと同じ行にあるセル)を選択し、次の数式を入力して「Enter」キーを押してください。その後、結果セルを選択し、「オートフィルハンドル」を下方向にドラッグして、この数式を適用します。
=HasStrike(B2) 
注:対応するセルに取り消し線のフォント効果が設定されている場合は「TRUE」、設定されていない場合は「FALSE」を返します。
5。結果セルすべて(ヘッダーを含む)を選択し、「データ」タブの「フィルター」をクリックしてください。
6。ドロップダウン矢印をクリックし、「TRUE」オプション横のチェックボックスだけをオンにしてから、「OK」をクリックしてください。スクリーンショットをご参照ください。

これで、取り消し線の書式が適用されたすべてのセルがフィルターされました。

3.4.2.2 驚異的なツールで取り消し線で書式設定されたテキストを簡単に取り消し線のあるセルをフィルタリング
「Kutools for Excel」の「特殊フィルタ」機能を使えば、取り消し線付きのセルをわずか数回のクリックで直接フィルターできます。
1。取り消し線付きのセルをすべてフィルターするため、対象の列範囲を選択し、「KUTOOLS PLUS」>「特殊フィルタ」>「取り消し線のあるセルをフィルタリング」をクリックしてください。

2。その後、「Kutools for Excel」のダイアログボックスが表示され、条件に該当するセル数が通知されます。「OK」をクリックして先に進みましょう。
これで、以下スクリーンショットのように、取り消し線付きのセルがすべてフィルターされました。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
冒頭の「フィルタリング」セクションで述べたとおり、Excel の標準機能を使えば、フォント色やセルの背景色、アイコンセットなどの視覚的基準に基づいてデータを簡単にフィルターできます。本セクションでは、「色でフィルター」機能を活用して、フォント色または背景色でセルを絞り込む方法を詳しく解説します。さらに、この作業をより効率的にするための便利なサードパーティ製機能もあわせてご紹介します。
3.4.3.1 フィルター機能で特定のフォントまたは背景色でフィルター
Excel では、「色でフィルター」機能を直接使って、特定のフォント色や背景色のセルを簡単にフィルターできます。
1。フォント色または背景色でセルをフィルターしたい列範囲を選択し、「データ」タブの「フィルター」をクリックします。
2。ドロップダウン矢印をクリックして「色でフィルター」を選択すると、現在の列範囲に含まれるすべてのセルの背景色とフォント色が一覧表示されます。任意のセルの背景色またはフォント色をクリックすれば、その色に基づいて該当するセルだけが瞬時にフィルターされます。

3.4.3.2 ユーザー定義関数とフィルター機能で複数の背景色でフィルター
複数の背景色でセルをフィルターしたい場合は、以下の方法をお試しください。
以下のスクリーンショットのように、B 列でオレンジ色または青色の背景色を持つすべてのセルをフィルターするには、まずこれらのセルの色コードを取得する必要があります。

1。「Alt」+「F11」キーを同時に押してください。
2。「Microsoft Visual Basic for Applications」ウィンドウで、「挿入」>「モジュール」をクリックし、表示されたコードウィンドウに以下の VBA コードをコピーしてください。
VBA コード:セルの背景色インデックスを取得
Function GetColor(x As Range) As Integer
GetColor = x.Interior.ColorIndex
End Function 
3。「Alt」+「Q」キーを押して、「Microsoft Visual Basic for Applications」ウィンドウを閉じてください。
4。新しい列の最初のセル(元の範囲のヘッダーと同じ行にあるセル)に、ヘッダーを入力してください。
5。ヘッダーの横にある空白セル(ここでは E2)を選択し、次の数式を入力して「Enter」キーを押してください。その後、結果が表示されたセルを選択し、「オートフィルハンドル」を下方向にドラッグして、この数式を適用します。
=GetColor(B2) 
注:セルに塗りつぶし色が設定されていない場合、-4142 が返されます。
6。補助列のセル(ヘッダーを含む)を選択し、「データ」タブの「フィルター」をクリックして、その列にフィルターを追加しましょう。
7。ドロップダウン矢印をクリックしてリストを開き、次のように設定してください。

これで、セルが下のスクリーンショットのように指定された背景色でフィルターされました。

3.4.3.3 素晴らしいツールでフォントまたは背景色によるフィルターを簡単に実行
フォント色や背景色でセルをフィルターするには、Excel に標準搭載されている「色でフィルター」機能が簡単です。ただし、ドロップダウンリストボックスが元のデータを覆い隠してしまうため、フォント色や背景色を適切に選ぶ際にいつでもデータを確認できなくなるという欠点があります。この問題を回避するには、「Kutools for Excel」の「特殊フィルタ」ユーティリティをご利用いただくことをおすすめします。
1。フォント色または背景色でセルをフィルターしたい列範囲を選択し、「Kutools Plus」>「特殊フィルタ」>「特殊フィルタ」をクリックします。

2。「特殊フィルタ」ダイアログボックスで、以下のように設定してください。
。

これで、指定されたフォント色または背景色選択した範囲を持つすべてのセルがフィルターされました。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
数値と数式の両方を含む長いデータ一覧から、数式セルだけをフィルターするにはどうすればよいでしょうか?ここでは、その方法を2 つご紹介します。
3.4.4.1 ユーザー定義関数とフィルター機能で数式を含むセルをフィルタリングセル
まずユーザー定義関数で一覧内のすべての数式セルを特定し、その結果に基づいてフィルター機能を適用して数式セルのみを表示します。
1。「Alt」+「F11」キーを押して、「Microsoft Visual Basic for Applications」ウィンドウを開いてください。
2。「Microsoft Visual Basic for Applications」ウィンドウで、「挿入」>「標準モジュール」をクリックし、次の VBA コードをコードウィンドウにコピーしてください。
Function HasFormula(Cell)
HasFormula = Cell.HasFormula
End Function 
3。「Alt」+「Q」キーを押して、「Microsoft Visual Basic for Applications」ウィンドウを閉じてください。
4。空白セルを選択します(このセルは、数式が入力されているかどうかを確認したいセルと同じ行にある必要があります)。以下の数式を入力し、「Enter」キーを押してください。その後、結果が表示されたセルを選択してオートフィルハンドルを下方向にドラッグし、この数式を他のセルにも適用します。
=HasFormula(C2) 
上記のスクリーンショットのように、結果は「FALSE」と「TRUE」になります。これは、対応するセルが数式を含むセルであれば TRUE を返し、そうでなければ FALSE を返すことを示しています。
5。結果セル(ヘッダーを含む)を選択し、「データ」メニューから「フィルター」をクリックして、簡単に絞り込めるフィルターを追加しましょう。
6。ドロップダウン矢印をクリックし、「TRUE」横のチェックボックスだけをオンにして、「OK」をクリックしてください。

これで、すべての数式を含むセルがフィルターされました。

3.4.4.2 素晴らしいツールで数式を含むセルをフィルタリングセルを簡単に実行
ここでは、「Kutools for Excel」の「特殊フィルタ」機能を使えば、わずか数回のクリックで一覧から数式を含むセルを簡単にフィルタリングできる方法をご紹介します。
1。数式を含むセルをすべてフィルターしたい一覧を選択し、「KUTOOLS PLUS」>「特殊フィルタ」>「数式を含むセルをフィルタリング」をクリックします。

2。「Kutools for Excel」ダイアログボックスが表示され、条件に合致するセルの件数が通知されます。「OK」をクリックして先へ進んでください。
これで、下のスクリーンショットのようにすべての数式を含むセルがフィルターされました。

さらに、「Kutools for Excel」の「特殊フィルタ」機能を使えば、次のような他の書式を持つセルを簡単に絞り込めます。
すべてのコメントをフィルター、詳しくはこちら。。。
特定の値に基づいてすべての結合済みをフィルター、詳しくはこちら。。。
Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
3.5 ワイルドカードでフィルター
フィルター時に正確な検索条件を忘れてしまった場合は、ワイルドカード文字をご活用ください。
Excel にはワイルドカード文字が3 種類だけあります。
| ワイルドカード文字 | 説明 | 例 |
| *(アスタリスク) | 任意の数の文字を表します | たとえば、「*berry」で検索すると、「Blackberry」や「Strawberry」、「Blueberry」などが見つかります。 |
| ?(疑問符) | 任意の1 文字を表します | たとえば、「l?ck」と検索すると、「lick」や「lock」、「lack」などが見つかります。 |
| ~(チルダ)の後に *、?、または ~ を続ける | 実際の *、?、または ~ 文字を表します | たとえば、「Face~*Shop」で検索すると、「Face*Shop」が見つかります。 |
フィルターでワイルドカードを使う方法をご紹介しましょう。
下のスクリーンショットのように、B 列で「Market」で終わるすべてのセルをフィルターするには、次の手順に従って操作してください。

1。まず、条件範囲を作成します。元の列ヘッダーと同じヘッダーを入力し、その下のセルにフィルタ条件を記述してください。下のスクリーンショットをご参照ください。

2。「データ」>「詳細設定」をクリックしてください。

3。表示される「詳細設定フィルター」ダイアログボックスで、次のように設定してください。

これで、「Market」で終わるすべてのセルがフィルターされました。下のスクリーンショットを参照してください。

「*」および「~」ワイルドカード文字のフィルターでの使い方も、上記の操作と同じです。
3.6 組み込み検索ボックスでフィルター
Excel 2010 以降をご利用の場合、Excel のフィルター機能に組み込みの検索ボックスが搭載されていることに気づくでしょう。ここでは、この検索ボックスを使ってExcel でデータをフィルタリングする方法をご紹介します。
下のスクリーンショットのように、「Market」を含むすべてのセルをフィルターしたい場合は、検索ボックスを使うと簡単です。

1。フィルターをかけたい列の範囲を選択し、「データ」メニューから「フィルター」をクリックして、フィルターを追加します。
2。ドロップダウンの矢印をクリックし、「Market」と検索ボックスに入力して「OK」をクリックします。
検索ボックスに入力すると、該当するテキストがリアルタイムで一覧表示されます。

これで、「Market」を含むすべてのセルが、下のスクリーンショットのようにフィルターされました。

4。表示されているデータのみをコピー(非表示またはフィルター済みのデータは無視)
既定では、Excel は表示されているセルと非表示のセルの両方をコピーします。フィルター後に表示されているセルのみをコピーしたい場合は、以下のいずれかの方法をお試しください。ショートカットキーで表示されているデータのみをコピー
ショートカットキーを使えば、表示されているセルだけを簡単に選択し、目的の場所に手動でコピー&ペーストできます。
1。コピーしたい範囲を表示されているセルのみで選択します。この段階では、表示セルと非表示セルの両方が選択されます。
2。「Alt」キーと「;」キーを同時に押すと、表示されているセルのみが選択されます。

3。「Ctrl」+「C」キーで選択したセルをコピーし、「Ctrl」+「V」キーで貼り付けましょう。

素晴らしいツールで表示されているデータのみを簡単にコピー
ここでは、「Kutools for Excel」の「可視範囲に貼り付け」機能をご紹介します。この機能を使えば、Excel で表示されているデータだけを簡単にコピーできます。さらに、フィルター済みの範囲でも、表示されているセルに対してのみ値をコピー&ペーストすることが可能です。
1。コピーしたいフィルター適用済みの範囲を選択し、「Kutools」>「範囲」>「可視セルに貼り付け」>「すべて/値のみ貼り付け」をクリックします。
数式が入力されたセルでは、「すべて」を選択すると結果と数式の両方がコピーされ、「値のみ貼り付け」を選択すると実際の値だけがコピーされます。

2。表示される「可視範囲に貼り付け」ダイアログボックスで、コピーしたセルの出力先となる空白セルを選択し、「OK」をクリックします。

これで、選択したフィルタリング範囲内に表示されているセルのみが、新しい場所にコピー&ペーストされました。

注:コピー先の範囲がすでにフィルターされている場合、選択した値は表示中のセルにのみ貼り付けられます。
Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
5。フィルター後に非表示または表示されている行を削除する
フィルター済みの一覧で、表示されているデータのみを残すために非表示の行を削除したい場合があります。ここでは、Excel でフィルター済みの一覧から非表示の行(または表示されている行)を削除する3 つの方法をご紹介します。
VBA コードで現在のワークシートからすべての非表示行を削除
次の VBA コードを使えば、Excel で現在のワークシートからすべての非表示行を簡単に削除できます。
注:この VBA コードは、フィルター済み一覧内の非表示行に加え、手動で非表示にした行も削除します。
1。削除したい非表示行を含むワークシートで、「Alt」+「F11」キーを同時に押して、「Microsoft Visual Basic for Applications」ウィンドウを開きます。
2。「Microsoft Visual Basic for Applications」ウィンドウで、「挿入」>「標準モジュール」をクリックし、以下の VBA コードをモジュールウィンドウにコピーしてください。
VBA コード:現在のワークシートからすべての非表示行を削除
Sub RemoveHiddenRows()
Dim xRow As Range
Dim xRg As Range
Dim xRows As Range
On Error Resume Next
Set xRows = Intersect(ActiveSheet.Range("A:A").EntireRow, ActiveSheet.UsedRange)
If xRows Is Nothing Then Exit Sub
For Each xRow In xRows.Columns(1).Cells
If xRow.EntireRow.Hidden Then
If xRg Is Nothing Then
Set xRg = xRow
Else
Set xRg = Union(xRg, xRow)
End If
End If
Next
If Not xRg Is Nothing Then
MsgBox xRg.Count & " hidden rows have been deleted", , "Kutools for Excel"
xRg.EntireRow.Delete
Else
MsgBox "No hidden rows found", , "Kutools for Excel"
End If
End Sub 3。「F5」キーを押して、コードを実行しましょう。
4。「Kutools for Excel」ダイアログボックスが表示され、削除された非表示行の件数が通知されます。「OK」をクリックして閉じてください。

これで、自動的に非表示になった行と手動で非表示にした行がすべて削除されました。
フィルター後に「ジャンプ」機能で表示されている行を削除
特定の範囲内で表示されている行のみを削除したい場合は、「ジャンプ」機能が便利です。
1。表示されている行を削除したいフィルタリング範囲を選択し、「F5」キーを押して「ジャンプ」ダイアログボックスを開きます。
2。「ジャンプ」ダイアログボックスで、「セルの選択」ボタンをクリックしてください。

3。「[セル選択]ダイアログボックス」で、「表示されているセルのみ」オプションを選択して、「OK」ボタンをクリックします。

4。これですべての表示セルが選択されます。「範囲を選択してください」を右クリックし、コンテキストメニューから「行を削除」を選択します。

すると、すべての表示セルが削除されます。
画期的なツールでフィルター後に非表示または表示行を簡単に削除
上記の方法は煩雑で時間がかかります。ここでは、「Kutools for Excel」の「非表示の行/列を削除する」機能をおすすめします。この機能を使えば、範囲を選択するだけでなく、現在のワークシート、複数選択したワークシート、さらにはワークブック全体においても、非表示または表示されている行を簡単に削除できます。以下の手順に従ってください。
1。非表示または表示されている行のうち、すべて削除したい範囲を選択します。
注意:
2。「Kutools」>「削除」>「非表示の行/列を削除する」をクリックします。

3。「非表示の行/列を削除する」ダイアログボックスで、次のように設定してください。

4。すると、すべての表示行または非表示行が一度に削除されます。同時に、削除された行数を示すダイアログボックスが表示されるので、「OK」をクリックして操作を完了します。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
6。複数のワークシートで一括フィルターを適用
通常、ワークシート内のデータをフィルター処理するのは簡単です。このセクションでは、共通のデータ構造を持つ複数のワークシートに対し、同じ条件でデータをフィルターする方法をご紹介します。
下のスクリーンショットのように、あるワークブックに3 つのワークシートが含まれていると仮定します。これらのワークシートすべてに「製品 = KTE」という同じ条件を同時に適用したい場合、以下の VBA コードが役立ちます。

1。「Alt」+「F11」キーを押して、「Microsoft Visual Basic for Applications」ウィンドウを開いてください。
2。「Microsoft Visual Basic for Applications」ウィンドウで、「挿入」>「標準モジュール」をクリックし、表示されたモジュールウィンドウに以下の VBA コードをコピーしてください。
VBA コード:複数のワークシートで同時にデータをフィルター
Sub apply_autofilter_across_worksheets()
'Updateby Extendoffice 20210518
Dim xWs As Worksheet
On Error Resume Next
For Each xWs In Worksheets
xWs.Range("A1").AutoFilter 1, "=KTE"
Next
End Sub 
注:コード中の「Xws.Range("A1").AutoFilter 1, "=KTE"」という行は、列 A のデータを条件「=KTE」でフィルターすることを意味します。ここで数字「1」は列 A の列番号であり、必要に応じて変更できます。たとえば、列 B で500 より大きいすべての数値をフィルターしたい場合は、この行を「Xws.Range("B1").AutoFilter 2, ">500"」に変更してください。
3。「F5」キーを押して、コードを実行してください。
指定した列が、現在のブック内のすべてのワークシートで同時にフィルターされました。以下の結果をご確認ください。

7。データを変更した後、フィルターを再適用します。
場合によっては、フィルタリング範囲に変更を加えたことがあるかもしれません。しかし、その範囲にどのような変更を加えても(下のスクリーンショット参照)、フィルター結果は変わりません。このセクションでは、手動または自動で現在の選択範囲にフィルターを再適用し、行った変更を確実に反映させる2 つの方法をご紹介します。

「再適用」コマンドでフィルターを手動で再適用
Excel には、フィルターを手動で再適用するための組み込み機能「再適用」が備わっています。以下の手順で実行できます。
[データ]>[再適用]をクリックして、現在のワークシートにフィルターを再適用しましょう。

すると、行った変更が反映されるよう、フィルタリング範囲が再適用されます。

VBA コードでフィルターを自動的に再適用
フィルター済みリストを頻繁に変更する必要がある場合、いちいち「再適用」機能をクリックするのは手間ですよね。そこで、データを変更した瞬間にフィルターが自動でリアルタイムに再適用される VBA コードをご紹介します。
1。自動的に再適用したいフィルターを含むワークシートで、シートタブを右クリックして「コードの表示」を選択します。

2。開いた「Microsoft Visual Basic for Applications」ウィンドウで、以下の VBA コードをコードウィンドウにコピーしてください。
VBA コード:データ変更時にフィルターを自動的に再適用
Private Sub Worksheet_Change(ByVal Target As Range)
Sheets("Sheet2").AutoFilter.ApplyFilter
End Sub 注:コード中の「Sheet2」は現在のワークシート名です。必要に応じて変更してください。

3。「Alt」+「Q」キーを押して、「Microsoft Visual Basic for Applications」ウィンドウをすばやく閉じましょう。
これ以降、フィルター済みリスト内のデータを変更すると、フィルター結果が自動的に更新されます。以下の GIF 画像をご確認ください。

8。フィルターをクリアまたは削除する
これまでに、Excel でのフィルターの追加・適用・使用方法について学びました。ここでは、Excel でフィルターをクリアまたは削除する方法をご紹介します。
8.1 列からフィルターをクリア
列にフィルターを適用した後、クリアしたい場合は、フィルターアイコンをクリックし、ドロップダウンメニューから「“ヘッダー名”のフィルターをクリア」を選択してください。

8.2 ワークシート内のすべてのフィルターをクリア
複数の列にフィルターを適用していて、すべてを一度にクリアしたい場合は、「データ」>「クリア」をクリックしてください。

すると、以下のスクリーンショットのように、すべてのフィルターが解除されます。

8.3 現在のブック内のすべてのワークシートからフィルターをクリア
ワークブック内の複数のワークシートにフィルターを適用していて、一度にすべてクリアしたい場合は、以下の VBA コードが役立ちます。
1。すべてのフィルターをクリアしたいワークブックを開き、「Alt」+「F11」キーを同時に押してください。
2。開いた「Microsoft Visual Basic for Applications」ウィンドウで、「挿入」>「標準モジュール」をクリックし、以下の VBA コードをモジュールウィンドウにコピーしてください。
VBA コード:現在のブック内のすべてのワークシートからフィルターをクリア
Sub Auto_Open()
'Updated by Extendoffice 20201113
Dim xAF As AutoFilter
Dim xFs As Filters
Dim xLos As ListObjects
Dim xLo As ListObject
Dim xRg As Range
Dim xWs As Worksheet
Dim xIntC, xF1, xF2, xCount As Integer
Application.ScreenUpdating = False
On Error Resume Next
For Each xWs In Application.Worksheets
xWs.ShowAllData
Set xLos = xWs.ListObjects
xCount = xLos.Count
For xF1 = 1 To xCount
Set xLo = xLos.Item(xF1)
Set xRg = xLo.Range
xIntC = xRg.Columns.Count
For xF2 = 1 To xIntC
xLo.Range.AutoFilter Field:=xF2
Next
Next
Next
Application.ScreenUpdating = True
End Sub 
3。「F5」キーを押してコードを実行すると、現在のブック内のすべてのワークシートからフィルターがクリアされます。
8.4 ワークシート内のすべてのフィルターを削除
上記の方法ではフィルターの状態のみがクリアされ、ワークシート上のフィルター機能自体は引き続き有効のままです。ワークシートからすべてのフィルターを完全に削除したい場合は、以下の方法をお試しください。
フィルター機能をオフにしてワークシート内のすべてのフィルターを削除
「データ」>「フィルター」をクリックして機能をオフにします(フィルターボタンのハイライトが解除されます)。

ショートカットキーでワークシート内のすべてのフィルターを削除
また、ワークシート内のすべてのフィルターを一括で削除するには、ショートカットキーもご利用いただけます。
フィルターを削除したいワークシートで、「Ctrl」+「Shift」+「L」キーを同時に押してください。
現在のワークシートに適用されているすべてのフィルターが即座に解除されます。

最高の Office 業務効率化ツール
| 🤖 | KUTOOLS AI アシスタント:次に基づいてデータ分析を革新します:インテリジェント実行 | コード生成| カスタム数式作成 | データ分析とチャート生成| 拡張機能呼び出し… |
| 人気の機能:検索・ハイライト、または重複をマーキング | 空白行を削除する | データを失うことなく列の結合またはセルを | 数式を使用しない四捨五入... | |
| スーパー LOOKUP:複数条件 VLookup | 複数値 VLookup | 複数シート間 VLookup | ファジーマッチ.... | |
| 高度なドロップダウンリスト:ドロップダウンリストをすばやく作成 | 連動型ドロップダウンリスト | 複数選択可能なドロップダウンリスト.... | |
| 列マネージャー:指定した数の列を追加|列の移動|非表示列の表示状態を切り替え|範囲および列の比較... | |
| 注目の機能:グリッドフォーカス | デザインビュー |強化された数式バー | ワークブックとシートマネージャー | リソースライブラリ(オートテキスト)| 日付ピッカー | ワークシートの統合 | 暗号化/セルの復号化 | リストからメール送信 | スーパーフィルター | 特殊フィルタ(太字のフォントを持つセルをフィルタリング/斜体/取り消し線。。。) 。。。 | |
| トップ15 ツールセット:12 テキストツール(テキストの追加、特定の文字を削除、...)| 50+チャートタイプ(ガントチャート、...)| 40+実用的関数(誕生日に基づいて年齢を計算します、...)| 19 挿入ツール(QR コードを挿入、パスから画像を挿入、...)| 12 変換ツール(単語に変換する、為替レートの変換、...)| 7 結合と分割ツール(高度な行のマージ、セルの分割、...)|さらに多数 |
Kutools for Excel でExcel スキルを強化し、これまでにない効率を体験しましょう。Kutools for Excel は、生産性を高め、時間を大幅に節約できる高度な機能を300 以上提供します。最も必要な機能を今すぐ入手するにはこちらをクリック。。。
Office Tab は Office にタブインターフェースをもたらし、作業を大幅に簡単にします
- Word、Excel、PowerPoint でタブを使った編集と閲覧を有効にします。Publisher、Access、Visio、Project でもご利用いただけます。
- 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
- 日々の生産性を50%も向上させ、毎日数百回ものマウスクリックを削減します!
すべてのKutools アドインが、たった1 つのインストーラーで完結。
Kutools for Officeスイートには、Excel ・Word ・Outlook ・PowerPoint 用のアドインと Office Tab Pro が含まれており、複数の Office アプリを横断して作業するチームに最適です。
- オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
- インストーラー1 つ、ライセンス1 つ— 数分でセットアップ可能(MSI 対応)
- 連携してさらにパワーアップ— Office アプリ全体で生産性が向上
- 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
- 最高のお得感— 個別アドイン購入よりお得
