【Excel】Power Queryで複数条件フィルターを設定!Excelのand/or条件の組み合わせ方

【Excel】Power Queryで複数条件フィルターを設定!Excelのand/or条件の組み合わせ方
🛡️ 超解決

ExcelのPower Queryを使えば、大量のデータから必要な情報だけを効率的に抽出できます。しかし、複数の条件を組み合わせてフィルターをかけたい場合、AND条件とOR条件のどちらを使えば良いか迷うことがあります。この記事では、Power QueryでAND条件とOR条件を効果的に組み合わせる方法を解説します。これにより、複雑なデータ抽出も思い通りにできるようになります。

Power Queryのフィルター機能は、データの整形や分析において非常に強力です。複数の条件を正確に設定することで、より精度の高いデータ分析が可能になります。この記事を読めば、Excelでのデータ処理能力が格段に向上するはずです。

ADVERTISEMENT

Power Queryでの複数条件フィルターの基本

Power Queryでは、テーブルの列に対してフィルターを設定できます。フィルターは、特定の条件を満たす行のみを残す機能です。条件は1つだけでなく、複数設定することが可能です。これにより、より絞り込んだデータ抽出が実現します。

フィルターは、各列のヘッダー部分にあるフィルターボタンから設定します。テキスト、数値、日付など、データの種類に応じたフィルターオプションが用意されています。これらのオプションを組み合わせて、複雑な抽出条件を作成します。

お探しの解決策が見つからない場合は、こちらの「Excelトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

AND条件とOR条件の組み合わせ方

Power Queryで複数条件を設定する場合、AND条件とOR条件を使い分けることが重要です。AND条件は、すべての条件を満たす行を抽出します。OR条件は、いずれかの条件を満たす行を抽出します。これらの条件を組み合わせることで、より柔軟なデータ抽出が可能になります。

Power Queryのフィルター設定画面では、AND条件とOR条件を明示的に選択するボタンはありません。しかし、フィルター設定の順番や、フィルターの追加方法によって、AND条件とOR条件を表現できます。この後、具体的な手順で解説します。

AND条件のみでフィルターを設定する手順

まず、AND条件のみでフィルターを設定する手順を説明します。これは、すべての条件を満たす行を抽出したい場合に利用します。

  1. Power Queryエディターを開く
    Excelで対象のデータを選択し、「データ」タブの「データの取得と変換」グループにある「テーブルまたは範囲から」をクリックして、Power Queryエディターを開きます。
  2. 最初の条件でフィルターを設定する
    フィルターを設定したい列のヘッダーにあるフィルターボタンをクリックします。表示されるメニューから、抽出したい条件を選択します。例えば、「テキストフィルター」から「指定の値より大きい」などを選択します。
  3. 次の条件でフィルターを設定する
    次に、別の列でフィルターを設定します。同様に、その列のヘッダーにあるフィルターボタンをクリックし、条件を選択します。
  4. フィルターが自動的にAND条件になる
    Power Queryでは、複数の列にフィルターを設定すると、それらは自動的にAND条件として扱われます。つまり、すべてのフィルター条件を満たす行のみが抽出されます。

ADVERTISEMENT

OR条件を組み合わせる手順

次に、OR条件を組み合わせる方法を説明します。これは、いずれかの条件を満たす行を抽出したい場合に利用します。OR条件は、同じ列内で複数の条件を指定する場合に有効です。

  1. Power Queryエディターを開く
    Excelで対象のデータを選択し、「データ」タブの「データの取得と変換」グループにある「テーブルまたは範囲から」をクリックして、Power Queryエディターを開きます。
  2. フィルター設定画面を開く
    OR条件を設定したい列のヘッダーにあるフィルターボタンをクリックします。
  3. 「カスタムフィルター」を選択する
    表示されるメニューから、「テキストフィルター」や「数値フィルター」などの項目にマウスカーソルを合わせ、さらに「カスタムフィルター」を選択します。
  4. 条件を「OR」で設定する
    「カスタムフィルター」ダイアログボックスが表示されます。ここで、最初の条件を設定します。例えば、「次の値と等しい」を選択し、値を入力します。
  5. 「または」を選択して次の条件を設定する
    ダイアログボックスの下部にある「または」を選択します。そして、次の条件を設定します。例えば、「次の値と等しい」を選択し、別の値を入力します。
  6. 「OK」をクリックする
    設定した条件でフィルターが適用されます。この場合、指定したいずれかの値と一致する行が抽出されます。

AND条件とOR条件を組み合わせる応用例

Power Queryでは、AND条件とOR条件を組み合わせて、より複雑な抽出条件を設定できます。例えば、「地域が『東京』かつ(商品カテゴリが『家電』または『食品』)」といった条件です。

この場合、まず「商品カテゴリ」列に対してOR条件を設定し、「家電」または「食品」のいずれかに該当する行を抽出します。次に、その結果に対して「地域」列でAND条件(「東京」)を設定します。これにより、目的のデータが抽出できます。

具体的な手順は以下の通りです。

  1. Power Queryエディターを開く
    対象のデータをPower Queryエディターで開きます。
  2. OR条件を設定する列でフィルターを開始する
    例えば「商品カテゴリ」列のフィルターボタンをクリックし、「テキストフィルター」から「カスタムフィルター」を選択します。
  3. 「カスタムフィルター」でOR条件を設定する
    ダイアログボックスで、「次の値と等しい」を選び、「家電」と入力します。「または」を選択し、「次の値と等しい」を選んで「食品」と入力します。
  4. OR条件の結果を確認する
    「OK」をクリックすると、「商品カテゴリ」が「家電」または「食品」の行のみが表示されます。
  5. AND条件を設定する列でフィルターを追加する
    次に、「地域」列のフィルターボタンをクリックします。
  6. AND条件を設定する
    「テキストフィルター」から「指定の値と等しい」を選択し、「東京」と入力します。
  7. 最終結果を確認する
    「OK」をクリックすると、「地域」が「東京」であり、かつ「商品カテゴリ」が「家電」または「食品」である行のみが表示されます。

フィルター設定の確認と編集

Power Queryでは、設定したフィルターは「適用済みステップ」として記録されます。これにより、後からフィルター設定を確認したり、編集したりすることが容易です。

Power Queryエディターの右側にある「適用済みステップ」ペインに、設定したフィルターが順番に表示されます。各ステップの横にある「X」ボタンをクリックすると、そのステップを削除できます。また、ステップ名をクリックすると、その時点でのデータを確認したり、設定を編集したりできます。

フィルター設定を解除する方法

設定したフィルターをすべて解除したい場合は、「適用済みステップ」ペインでフィルターに関連するステップを削除します。

一般的に、フィルターは「フィルターされた列名」といった名前で記録されます。該当するステップの横にある「X」ボタンをクリックすれば、そのフィルター設定は解除されます。すべてのフィルターを解除したい場合は、フィルターに関連するすべてのステップを削除してください。

Power Queryでフィルターが機能しない場合の対処法

Power Queryでフィルターが期待通りに機能しない場合、いくつかの原因が考えられます。まず、データの形式を確認することが重要です。例えば、数値として認識すべき列がテキストとして扱われている場合、数値フィルターが正しく適用されません。

また、不要な空白文字が含まれている場合も、フィルター条件に一致しないことがあります。これらの場合は、「データの整形」機能を使って、空白文字の削除やデータ型の変換を行う必要があります。「適用済みステップ」で、意図しない変換が行われていないかも確認しましょう。

データ型が原因でフィルターが機能しない

フィルターが機能しない最も一般的な原因の一つは、データ型が正しく設定されていないことです。例えば、数値の列に「100」と入力されていても、データ型が「テキスト」になっていると、数値フィルター(「100より大きい」など)は機能しません。

対処法としては、Power Queryエディターで該当列のデータ型を確認し、必要であれば変更します。列ヘッダーの左側にあるアイコンでデータ型を確認できます。アイコンをクリックすると、データ型を変更するメニューが表示されます。数値、テキスト、日付など、適切なデータ型を選択してください。

不要な空白文字や特殊文字が原因でフィルターが機能しない

データの中に、目に見えない空白文字や特殊文字が含まれていると、フィルター条件に一致しないことがあります。これは、特にテキストデータで発生しやすい問題です。

この問題を解決するには、「データの整形」機能を使って、不要な文字を削除します。対象の列を選択し、「ホーム」タブまたは「変換」タブにある「書式設定」グループから「トリミング」を選択すると、文字列の前後の空白文字を削除できます。さらに、「置換」機能を使って、特定の不要な文字を削除することも可能です。

フィルター設定の順番が原因で期待通りの結果にならない

Power Queryでは、フィルターの適用順序が結果に影響を与えます。特にAND条件とOR条件を組み合わせる場合、どの条件を先に適用するかが重要になります。

もし期待通りの結果が得られない場合は、「適用済みステップ」ペインでフィルターの適用順序を変更してみましょう。ステップをドラッグ&ドロップすることで、実行順序を変更できます。一般的には、より多くのデータを絞り込める条件を先に適用すると、処理が効率的になります。

Power QueryとExcelのフィルター機能の比較

Power Queryのフィルター機能は、Excelの標準フィルター機能と比較して、いくつかの利点があります。

項目 Power Queryフィルター Excel標準フィルター
データ更新 自動更新が可能。元のデータが変更されても、クエリを更新するだけで結果が反映される。 手動で再適用が必要。元のデータ変更時に自動で更新されない。
複雑な条件設定 AND/OR条件の組み合わせや、カスタムフィルターで高度な設定が可能。 基本的なAND/OR条件は設定できるが、複雑な組み合わせは煩雑になる。
データソース Excelファイルだけでなく、データベース、Webページなど多様なデータソースに対応。 主にExcelファイル内のデータに限定される。
履歴管理 設定したフィルター手順が「適用済みステップ」として記録され、確認・編集・削除が容易。 フィルター設定は一時的で、履歴として残らない。
パフォーマンス 大量データでも比較的効率的に処理できる。 データ量が多いと処理が重くなることがある。

まとめ

この記事では、Power Queryで複数条件フィルターを設定する方法について、AND条件とOR条件の組み合わせ方を中心に解説しました。Power Queryを使えば、Excelの標準機能では難しい複雑な条件でのデータ抽出も、段階的に設定を記録しながら効率的に行うことができます。

今回解説した「カスタムフィルター」でのOR条件設定や、「適用済みステップ」での条件の追加・編集をマスターすることで、データ分析の幅が格段に広がります。ぜひ、実際のデータでこれらの機能を試してみてください。

📊
Excelトラブル完全解決データベースこの記事以外にも、様々なエラー解決策をまとめています。困った時の逆引きに活用してください。

ADVERTISEMENT

この記事の監修者
📈

超解決 Excel・Word研究班

企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。

🏆
超解決 Excel検定 あなたのExcel実務能力を3分で測定!【1級・2級・3級】