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

目次

この記事で分かること

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

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

PowerBI実践課題

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

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

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

本記事の目標、グラフとスライサを作る

使用するデータ

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

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

エネルギーデータテーブル(1行目からの抜粋部分)

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

CO2換算係数テーブル

もし良ければ、下の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関数に似ているので習得は容易です。引数の渡し方を下の表のように比較すると、それが良くわかります。

Excel Vlookup関数とPower BIのRelated関数との比較表

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

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

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

Power BIに実装

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

リレーションシップ作成

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

Power BI リレーションシップ作成の1番目の画面

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

Power BI リレーションシップ作成の2番目の画面

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

Power BI リレーションシップ作成の3番目の画面

新しい列を作り、「結論」で述べたDAX関数式を書き込みます。方法は先ほど「日付列」を入力したときと同じです。

“=”のあとにRELATED() と入力すると括弧内の引数候補一覧が現れるので、引数は[CO2換算係数]を選択します。

グラフ作成

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

Power BI グラフ作成の1番目の画面

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

Power BI グラフ作成の2番目の画面
本記事の目標の一つ、グラフが完成した状態

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

本記事の目標の一つであるグラフ作成の、不具合一例

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

本記事の目標の一つであるグラフ作成の、不具合一例。その解決策

スライサ作成

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

本記事の目標の一つ、スライサ作成の1番目の画面

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

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

本記事の目標の一つ、スライサ作成の2番目の画面

まとめ

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

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

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

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

この記事を書いた人

“ねこまご”は、猫の癒しと“孫の手”の実務サポートを合わせた造語です。
Power BI と IT 業務の“こまごま解決”に特化した、実務者向けブログを運営しています。

社内SEを約10年経験した後、2025年にブログ開設しました。
日々の現場で発生する"細かなIT課題"に向き合ってきた中で、
「専門用語なしで理解したい」
「実務でどう使うかを知りたい」
「時間がない中でも効率よく学びたい」
というニーズを強く感じてきました。

私自身、家事・育児・家族サービス・仕事の合間で学び続けている生活者です。限られた時間の中でスキルを磨いていく大変さや、思うように勉強が進まないもどかしさもよく分かります。

だからこそ、このブログでは、
1) Power BI などのITツールのTips(IT小技シリーズ)
2) 初心者でも挫折しないPower BI講座
3) リアルなブログ運営記録(将来的に配信予定)
を、できるだけシンプルに、すぐ実務で使える形にして発信しています。

難しい専門用語を避け、「すぐ役立つITスキル」を届けることを大切にしています。

ITは一気に習得するより、小さな疑問をひとつずつ解消していくことが近道だと考えます。

その“かゆいところに手が届く”存在として、実務力向上やキャリアアップに悩む読者の力になれるブログを目指しています。

コメント

コメントする

CAPTCHA


目次