MENU

実践PowerBI講座③DAX>Related関数で別テーブルから値取得

目次

この記事で分かること

Related関数を用いた、別テーブルから値を取得する方法と活用例
Related関数とExcelのVlookup関数との類似性
スライサの作り方

本講座の対象者はExcel関数に習熟している人です。詳しくは以下の記事を参照してください。

PowerBI実践課題

次のようなビジネス課題を想定します。地球温暖化が社会課題になっている今、とある会社でCO2排出量低減が経営課題となりました。まず必要になるのは現状把握です。

ここでは本社、支社の各拠点が使用しているエネルギー(電気、ガス、ガソリン)の使用量をCO2排出量に換算してグラフ化することを課題にします。なおCO2排出量はエネルギー使用量とCO2換算係数の掛け算です。

先に解答を下に示します。縦軸にエネルギー毎のCO2排出量、横軸に年月を取った積み上げ面グラフが解答イメージです。拠点毎に値を抽出するため「スライサ」と呼ばれるフィルタを追加します(解答画面の右側)。

使用するデータ

エネルギーデータは拠点毎、月毎、エネルギー毎の値を保存した表です。マスタはエネルギー毎の換算係数を表にしています。

エネルギーデータ(テーブル名:D01_Energy)

CO2換算マスタ(テーブル名:D02_CO2kanzan)

もし良ければ、下のExcelデータをダウンロードして演習に使って下さい。

data_Energy_2

data_CO2kanzan_1

PowerBI実践課題の解答

結論 DAX関数式

C0101_CO2排出量 = RELATED(D02_CO2kanzan[CO2換算係数])*[値]/1000

1000で割るのはkgをtonに変えるためです

DAX関数式の説明

今回のRelated関数の使い方は、エネルギーデータ各行の「値種類」に対応する「CO2換算係数」を、マスタから取得することです。引数と戻り値は次の通りです。

引数「CO2換算係数」
戻り値「CO2換算係数」

Related関数の使い方はExcelのVlookup関数に似ているので習得は容易です。引数の渡し方を下の表のように比較すると、それが良くわかります。

ではVlookup関数でいう「検索値」はどうやって渡すのか?実は検索値」は関数の中ではなく、リレーションシップを作って渡す必要があります。

なお、リレーションシップを作るとは、キーとなる項目列をテーブル同士で紐付けすることです。

詳しくは次の”Power BIに実装”で説明します。

Power BIに実装

まずデータを取り込みます。次にDATE関数で日付列(項目名:C0001_日付)を作ります。いずれも方法は講座②と同じです。

リレーションシップ作成

①モデリングー②リレーションシップの管理 の順にクリックします。

「新しいリレーションシップ」(左上)をクリックします(今回はリレーションシップが自動作成されたのですが、手順を示すために敢えて削除して作り直しています)。

①をクリックしてテーブルを選択-②ヒモ付けする列をそれぞれ選択 ③「保存」をクリックします。

新しい列を作り、「結論」で述べたDAX関数式を書き込みます。方法は講座②と同じです。RELATED() と入力すると括弧内の引数候補一覧が現れるので、引数は[CO2換算係数]を選択します。

グラフ作成

「視覚化」一覧の①「積み上げ面グラフ」をクリックします。

X軸、Y軸、凡例に各値をドラッグ&ドロップするとグラフが完成します。

なお、グラフが下のように横軸が「年」になっている場合

次のように対応します。①X軸のVマークをクリック―②C0001_日付 を選択

スライサ作成

①何もないところをクリック―②「スライサ」をクリックします。

①「拠点」列をドラッグ&ドロップすると冒頭の課題解答イメージのグラフとスライサが完成します。スライサの選択肢をクリックすると値が変わることを確認してみてください。

グラフやスライサの体裁を整えたい場合は②の筆マークをクリックして設定変更してください。

まとめ

以上、Related関数を使ってマスタからデータを取得する方法を説明しました。ExcelのVlookup関数と類似しているので、Related関数は扱いやすい関数です。

但しリレーションシップは別画面で作らなければならない点が異なります。これはPowerBI独特の操作性ですね。

少しでもPower BIの理解に役立てれば幸いです。(終わり)

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

 氷河期世代SEです。ITなどに関するマメ知識から、氷河期世代の生き方まで、読者に役立つ情報を発信します。
 仕事では資格を持たず、師匠もいない環境で身に付けた独学スキルだけが武器です。群れを嫌う一匹狼、いや狼ほど強くないので一匹猫(Lone Cat)として生きています。
 家庭では46歳で第一子、48歳で第二子を授かり、晩婚夫婦が子育て奮闘中です。趣味は料理、自動車、歴史、グルメ、温泉など幅広く色々やってます。
 2025年にブログをはじめました。老眼と同時デビューです。

コメント

コメントする

CAPTCHA


目次