パワークエリの「条件列」コマンドのサムネイル
AさんAさん

表の「売上金額」列に応じてランク分け等、条件分岐を行いたいです。
Power Queryエディター上で条件分岐を行う場合、どうしたら良いですか?

森田森田

その場合、Power Queryエディター上の「条件列」コマンドを使えば良いですよ!
では、詳細を解説していきますね。

Excelステップ講座

はじめに

この記事はパワークエリの概要を把握していることが前提です。

参考記事

パワークエリの概要については、以下の記事をご参照ください。

「条件列」の使いどころ

「条件列」コマンドは、クエリの新規作成ステップのうち、STEP2の「取得データを整形/加工(Transform)」に該当する機能です。

「条件列」コマンドのスコープ

機能自体は、ワークシート上の関数の「IF」「IFS」と似ています。

クエリ内の一連の整形作業の中で、既存の列を対象に条件分岐を行いたい場合、Power Queryエディター上の「条件列」コマンドを使いましょう。

パワークエリの「条件列」コマンドの使いどころ

「条件列」コマンドを活用することで、既存の列を対象に任意の条件分岐を行った結果の列(条件列)を自動追加できます。

参考記事

ワークシート上の関数の「IF」・「IFS」の詳細は、以下の記事をご参照ください。


使用イメージ

「売上明細」テーブルへ「売上金額」列が500000以上だったら「A」、それ以外は「B」となる条件列を追加したイメージが以下です。

パワークエリの「条件列」コマンドの使用イメージ

Power Queryエディター上で条件列を追加したステップを登録できました。
「条件列」コマンドの場合、デフォルトのステップ名は「追加された条件列」になる(クエリ内で2つ目以降の「追加された条件列」ステップは連番が付加)。

後は、クエリ新規作成ステップのSTEP2で必要な他ステップを登録したら、STEP3を行いましょう。
条件列はデータ型が未設定のため、後工程で数値として整形あるいは集計する場合、データ型を「テキスト」等へ変更すること。

これにより、クエリに記録した「条件列」コマンドのステップを自動化できます。

参考記事

クエリの新規作成ステップのSTEP2に役立つ各種コマンドの詳細は「パワークエリ(Power Query)の記事一覧」を、STEP3の手順はパワークエリの概要記事をご参照ください。


ステップ登録手順

「条件列」コマンドのステップを登録したい場合は、以下の手順となります。

「条件列」コマンドのステップ登録手順

  1. リボン「列の追加」タブをクリック
  2. 「条件列」をクリック
  3. 任意の列名を入力
    ※今回は「売上ランク」
  4. 任意の論理式を入力 or 選択
    ※今回は列名が「売上金額」、演算子が「次の値以上」、値が「500000」
  5. 真の場合の値を入力 or 選択
    ※今回は「A」
  6. 偽の場合の値を入力 or 選択
    ※今回は「B」
  7. 「OK」をクリック

【参考】「条件列の追加」ダイアログは列やパラメーターも選択可能

ステップ登録手順④⑤⑥に関係する「条件列の追加」ダイアログの「値」・「出力」・「それ以外の場合」ボックスは、「ABC123」をクリックすることで、値の入力以外にも、既存の列やパラメーターを選択することも可能です。

「条件列の追加」ダイアログの入力・選択方法

  • 列の選択
  • パラメーター

ケースバイケースで使い分けましょう。
パラメーターの詳細は別記事で解説予定。

【参考】3種類以上の条件分岐も対応可能

「条件列」コマンドは、2種類の条件分岐だけでなく、「句の追加」ボタンをクリックすることで3種類以上の条件分岐も対応可能です。

「条件列」コマンドの条件分岐を3種類以上にする方法

「句の追加」ボタンをクリックするごとに、ステップ登録手順④⑤をもう1セット指定してください。

論理式はダイアログの上から順番に判定されていきます。

たとえば、論理式が2つある場合は、以下の3種類に分岐します。

  1. (論理式1の条件を満たした場合)真の場合の値1
  2. (論理式1の条件を満たさず、論理式2の条件を満たした場合)真の場合の値2
  3. (それ以外の場合)偽の場合の値

【注意】AND条件やOR条件は設定不可

「条件列」コマンドでは、AND条件やOR条件は設定できません。

AND条件やOR条件を含めた条件列を追加したい場合は、カスタム列に「if式」を記述する必要があります。
if式の詳細は別記事で解説予定。

参考記事

カスタム列の詳細は、以下の記事をご参照ください。

登録したステップの変更手順

「条件列」コマンドで登録したステップを後から変更する場合、以下の手順となります。

「条件列」コマンドのステップ変更手順

  1. 「追加された条件列」ステップの歯車マークをクリック
  2. 任意の箇所を修正
  3. 「OK」をクリック

手順①のステップ名は「条件列」コマンドのデフォルトの名前(自身でリネームしている場合は別表記)。
手順①はステップ名をダブルクリックでもOK。
手順①で起動した「条件列」ダイアログは、ステップに設定した内容がセットされた状態。

サンプルファイルで練習しよう!

可能であれば、以下のサンプルファイルをダウンロードして、実際に操作練習をしてみてください。

サンプルファイル_PowerQueryデータ整形_条件列.xlsx

サンプルファイルのダウンロードには無料メルマガに登録いただく必要があります(上記リンクから登録フォームへ遷移します)。

ブックを開いたら、「売上明細」クエリを編集(Power Queryエディター起動)し、次の手順を実施してください(今までの解説のまとめです)。
ブック起動時、「セキュリティの警告」メッセージが表示された場合は「コンテンツの有効化」をクリック。

  1. リボン「列の追加」タブをクリック
  2. 「条件列」をクリック
  3. 任意の列名を入力
    ※今回は「売上ランク」
  4. 任意の論理式を入力 or 選択
    ※今回は列名が「売上金額」、演算子が「次の値以上」、値が「500000」
  5. 真の場合の値を入力 or 選択
    ※今回は「A」
  6. 偽の場合の値を入力 or 選択
    ※今回は「B」
  7. 「OK」をクリック

本記事の解説と同じ結果になればOKです!

さいごに

いかがでしたでしょうか?

「条件列」コマンドを活用することで、既存の列を対象に任意の条件分岐を行った結果の列を自動追加できます。

既存の列から、集計/分析の軸となる新しい列を追加したい場合に役立てましょう!

なお、パワークエリの各種テクニックは、私の拙著でも体系的に解説していますので、こちらも参考にしてみてください。


また、よりコアな情報を発信していくために「公式LINE」を開始しましたので、ご興味があれば以下バナーから友だち追加をお願いします!
特典として、Excelワークシート関数一覧(計22スライド)やExcelショートカットキー一覧(計25スライド)等をプレゼント!

森田貢士の公式LINEへの友だち追加告知用バナー

ご参考になれば幸いですm(_ _)m

森田森田

「条件列」コマンドに慣れたら、他の列の追加に役立つコマンドもセットで覚えることをおすすめします。
具体的には、通し番号の列を追加できる「インデックス列」コマンドや、任意の数式の計算列を追加できる「カスタム列」コマンドです。
元データを集計/分析しやすくする際に便利なので、ケースに応じて活用していきましょう!