Power BIのDAX関数を使って売上高増減率を計算 Divide関数の使い方

Power BIでは基本的にDAX関数を使ってデータを分析できる形にデータを整形し、整形して作ったメジャーと呼ばれる関数をグラフやチャートにドラッグ&ドロップしてレポートを形作っていきます。

といってもなかなかイメージが沸かないかと思うので、今回はDAX関数の中でも基礎的且つ実践的な「Divide関数」を使って実際にメジャーを作ってみようと思います。Power BIのおすすめの学習方法でも触れましたが、Power BIの学習は実際にレポートを作る=アウトプットすることで最も早く知識が身に付きます。

※こちらは2020年1月に初期投稿してから、2020年8月に内容を修正し再公開させて頂いています。何卒ご理解願います。

 

 

Divide関数とは

ずばり、除算(割り算)をするための関数です。

例えば下図のようにセルB÷セルCという割り算をしたい場合、Excelでは別セルに「/(スラッシュ)」を使って、「=B2/C2」と入力することで計算します。

Power BIのDAX関数を使う場合は「=Divide(‘テーブル名'[列B],’テーブル名'[列C],0)」と入力して除算を表現します。

=の後にDivideでつないで定義するのがDAX関数ならではの構文と言えます。

関数の詳しい定義方法に関しては、Microsoft Docsに記載があります。

 

 

今回実現したいこと

Divide関数を使って売上金額の対前年比での増減率を計算することです。

具体的にはPower BIレポートのテンプレート集の「売上レポート」で利用した下図レポート内赤枠の「売上前年比」の計算方法です。

 

 

Divide関数の利用方法

下記がDivide関数を使って売上の増減率を計算する方法です。データは既にインポート済の前提で進めていきます。

 

Step1:新しいメジャーの作成

「新しいメジャー」をクリックすると、下図のように関数入力用のボックスが出てくるので、そこにDAX関数を入力していきます。

 

Step2:DAX関数の入力

今回利用したDAX関数は下記の構文です。

売上前年比(%) = DIVIDE(‘※Key Measure'[合計売上金額],’※Key Measure'[前年売上金額],0)
このDivide関数に関しては、Microsoft Docsにも記載がありますが、DIVIDE(<numerator>, <denominator> [,<alternateresult>])です。
・numerator:割られる数
・denominator:割る数
・alternateresult:0 による除算がエラーになったときに返される値
今回の例では、DIVIDE(<今年の合計売上金額>,<前年の売上金額>,0)と入力しているので、割られる数=今年の売上金額、割る数=前年の売上金額という計算命題となります。
最後に「Enter」で関数を確定させて、エラーが表示されなければ完成です!
以上。

 

 

ソフ蔵

ソフ蔵

IT企業でビッグデータ分析やアルゴリズム構築に携わってます。
趣味でPower BIの使い方やデータ分析のノウハウを伝えています。

Power BIを学習しよう!!

Power BIレポートのテンプレートサイト始めました

Power BIショーケースサイト

Power BI初級者向けのコーチング始めてみました!

詳細を見る(ココナラ)

またPower BIの入門記事・記事をピックアップしましたので、こちらも参考にしてみて下さい

▶Power BIとは? 記事版 / 動画版(Power BIの概要を3分で解説!)

▶Power BIのメリット・デメリット 記事版 / 動画版

 

 

2 Comments

  • POWER BI マトリックスのビジュアルの中で、
    商品カテゴリの総合計との売上比率ではなく、
    対 個々の商品カテゴリとの合計での比率を出したいのですが、どのDAX関数でよいか1ヶ月程悩んでます。
    参考書も見ているのですが、解決には及びません。時間もなく、コメントさせて頂きました。
    DAX初心者ですので、上手く伝わらないかもしれませんが、ご教示頂けましたら幸いです。

    Reply
    • こんにちは!商品カテゴリの小計毎で合計を出したいということでしょうか。マトリックスでパーセント表示すると、総計のパーセント表記になってしまうんですよね。これは、Calculate関数+Allselected関数を使って別途メジャーを作れば解決します。Power BIマトリックスでカテゴリ毎での割合を計算する方法で解説させて頂いてますので、ご確認お願いします。よろしくお願い致します

      Reply

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA


Scroll to Top