【Excel】Power Queryで条件付き列を追加する!ExcelのGUI操作だけでIF分岐列を作る方法

【Excel】Power Queryで条件付き列を追加する!ExcelのGUI操作だけでIF分岐列を作る方法
🛡️ 超解決

Excelでデータ分析を行う際、特定の条件に基づいて新しい列を作成したい場面は多いです。例えば、売上金額が一定額以上なら「優良顧客」、それ未満なら「通常顧客」と分類したい場合などが該当します。

従来は関数やVBAを使う必要がありましたが、Power Queryを使えばGUI操作のみで簡単に条件分岐列を追加できます。この記事では、ExcelのGUI操作だけでPower QueryにIF分岐列を追加する方法を解説します。

Power Queryの「条件列の追加」機能を使えば、複雑な関数を覚える必要はありません。データの前処理や整形が格段に効率化されるでしょう。

【要点】Power Queryで条件分岐列をGUI操作で追加する方法

  • 条件列の追加機能: 既存の列の値に基づいて新しい列に条件分岐の結果を自動で入力できます。
  • 複数の条件設定: IF、ELSE IF、ELSEの形式で、複数の条件とそれぞれの結果を設定できます。
  • GUI操作のみ: VBAや複雑な関数知識が不要で、Excelの画面上で直感的に設定が完了します。

ADVERTISEMENT

Power Queryの条件列追加機能の概要

Power Queryの「条件列の追加」機能は、既存の列の値を評価し、指定した条件に合致した場合に新しい列に特定の値を入力する機能です。IF文のような分岐処理を、ExcelのGUI上で設定できます。

この機能を使用すると、例えば「成績」列が「A」なら「合格」、「B」なら「追試」、「C」なら「不合格」といった分類を簡単に行えます。複数の条件を設定することも可能です。

この機能は、データ分析の前段階で行われるデータ整形作業において、手作業や関数での列追加に比べて大幅な時間短縮とミス削減に繋がります。

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

Power Queryで条件付き列を追加する手順

ここでは、ExcelのGUI操作のみでPower Queryに条件付き列を追加する具体的な手順を解説します。例として、「売上」列の値が10000以上なら「高」、5000以上10000未満なら「中」、5000未満なら「低」という3段階の条件で新しい列を作成します。

  1. Excelでデータを準備する
    Power Queryで取り込みたいデータがExcelシートに準備されていることを確認します。データはテーブル形式になっていると、より扱いやすくなります。
  2. Power Queryエディターを開く
    Excelのリボンメニューから「データ」タブを選択します。「データの取得と変換」グループにある「テーブルまたは範囲から」をクリックします。
  3. 「条件列の追加」ダイアログを開く
    Power Queryエディターが表示されたら、リボンメニューの「列の追加」タブを選択します。その中にある「条件列」をクリックします。
  4. 新しい列名を設定する
    「条件列の追加」ダイアログが開きます。まず、「新しい列名」に作成したい列の名前を入力します。ここでは「売上カテゴリ」と入力します。
  5. 最初の条件を設定する
    「条件」セクションで、最初の条件を設定します。
  6. 列の選択
    「列名」のドロップダウンリストから、条件判定の元となる列を選択します。ここでは「売上」を選択します。
  7. 演算子の選択
    「演算子」のドロップダウンリストから、条件判定に使用する演算子を選択します。ここでは「等しいか、次の値より大きい」を選択します。
  8. 値の入力
    「値」の入力フィールドに、条件判定に使用する数値を入力します。ここでは「10000」と入力します。
  9. 結果の入力
    「出力」の入力フィールドに、この条件に合致した場合に新しい列に入力したい値を入力します。ここでは「高」と入力します。
  10. 次の条件を追加する
    さらに条件を追加するために、「+ 条件」ボタンをクリックします。
  11. 2番目の条件を設定する
    新しい条件行が表示されます。
  12. 列の選択
    「列名」で「売上」を選択します。
  13. 演算子の選択
    「演算子」で「等しいか、次の値より大きい」を選択します。
  14. 値の入力
    「値」に「5000」と入力します。
  15. 結果の入力
    「出力」に「中」と入力します。
  16. 最後の条件(ELSE)を設定する
    上記2つの条件に合致しなかった場合に適用される結果を設定します。
  17. ELSEの結果を入力
    ダイアログの下部にある「それ以外の場合」の入力フィールドに、上記条件に合致しなかった場合の出力値として「低」と入力します。
  18. 設定の完了
    すべての条件設定が完了したら、「OK」ボタンをクリックします。
  19. 結果の確認
    Power Queryエディターに「売上カテゴリ」という新しい列が追加され、設定した条件に基づいて「高」「中」「低」の値が入力されていることを確認します。
  20. Excelへの読み込み
    Power Queryエディターのリボンメニューにある「閉じて読み込む」をクリックして、結果をExcelシートに反映させます。

複数の条件分岐を組み合わせる方法

「条件列の追加」機能では、IF文のELSE IFのように、複数の条件を順番に評価させることが可能です。これは、「+ 条件」ボタンをクリックすることで実現できます。

例えば、数値だけでなく文字列に対しても条件を設定したり、複数の列を組み合わせて条件を判定したりすることもできます。ただし、複雑すぎる条件設定は管理が難しくなるため、必要に応じてクエリの分割やカスタム列の追加を検討することも重要です。

各条件の評価順序は、ダイアログの上から下への順番になります。そのため、より具体的な条件を先に設定し、一般的な条件を後に設定するなどの順序に注意が必要です。

ADVERTISEMENT

Power Queryで条件付き列を追加する際の注意点

Power Queryで条件付き列を追加する際には、いくつかの注意点があります。

大文字・小文字の区別

文字列を比較する場合、Power Queryではデフォルトで大文字と小文字が区別されます。例えば、「Apple」と「apple」は異なる値として扱われます。

もし大文字・小文字を区別せずに比較したい場合は、条件設定の前に、対象の列をすべて大文字または小文字に変換するステップを追加する必要があります。これは、「列の変換」タブから「書式」→「大文字」または「小文字」を選択することで行えます。

数値と文字列の混在

条件判定の元となる列に数値と文字列が混在している場合、意図しない結果になることがあります。例えば、数値として扱いたい列に「10,000」のようにカンマが含まれていると、Power Queryはそれを文字列として認識する可能性があります。

このような場合は、条件設定を行う前に、対象の列のデータ型を正しく設定するステップを挟むことが重要です。Power Queryエディターの「ホーム」タブにある「データ型」を変更するか、あるいは「列の変換」タブから「データ型」を変更します。

条件の評価順序

複数の条件を設定した場合、Power Queryは設定された順序で条件を評価します。一番上の条件から順にチェックされ、最初に合致した条件の「出力」が適用されます。

例えば、「売上」が10000以上の場合に「高」、5000以上の場合に「中」と設定した場合、「売上」が15000であれば、最初の「10000以上」の条件に合致するため「高」が適用されます。もし「5000以上」を先に設定してしまうと、15000は5000以上でもあるため、「中」が適用されてしまう可能性があります。意図した結果を得るためには、条件の順序に注意が必要です。

「それ以外の場合」の重要性

「条件列の追加」ダイアログの「それ以外の場合」フィールドは、設定したどの条件にも合致しなかった場合に適用される値です。このフィールドを空にしたままOKを押すと、合致しなかった行にはnull値が入ります。

意図せずnull値が発生するのを防ぐため、通常は「それ以外の場合」に適切なデフォルト値(例:「その他」「未分類」など)を設定することが推奨されます。

Power QueryとExcel関数の使い分け

Excelで条件付き列を作成する方法としては、IF関数などのExcel関数を使う方法もあります。Power Queryの「条件列の追加」機能とExcel関数は、それぞれ得意な場面が異なります。

項目 Power Queryの条件列追加 Excel関数 (IF関数など)
操作方法 GUI操作のみで設定可能 数式を手入力する必要がある
データ更新 クエリを更新するだけで自動的に再計算される 元のデータが変更された場合、手動で数式をコピー・再計算する必要がある場合がある
複雑な条件 複数の条件分岐をGUIで設定しやすい ネストしたIF関数は数式が長くなり、可読性が低下しやすい
データソース Excelシートだけでなく、データベースやWebなど様々なデータソースに対応 主にExcelシート内のデータに適用
学習コスト GUI操作に慣れれば、関数知識がなくても利用可能 IF関数やAND/OR関数などの知識が必要

データソースがExcelシートのみで、かつデータ量がそれほど多くなく、分析の頻度も低い場合はExcel関数でも十分対応できます。しかし、複数のデータソースを結合したり、定期的にデータを更新・整形したりする場合には、Power Queryの「条件列の追加」機能が非常に強力なツールとなります。

まとめ

この記事では、ExcelのPower Queryを使用して、GUI操作だけで条件付き列を追加する方法を解説しました。複雑な数式を記述することなく、IF分岐のような処理を容易に実現できます。

「条件列の追加」機能を使えば、データの前処理や分析の準備段階における作業効率が大幅に向上します。条件の評価順序やデータ型、大文字・小文字の区別といった注意点を理解しておけば、より正確で信頼性の高いデータ整形が可能になります。

この機能を活用して、データ分析の効率化と質の向上を目指しましょう。

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

ADVERTISEMENT

この記事の監修者
📈

超解決 Excel・Word研究班

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

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