PowerBIのDAX関数ではExcelの条件を満たした合計を求めるSUMIFS関数はありません。
今回は、
「SUM関数、SUMX関数の違い」
「SUMIFS関数的に条件を指定した合計の計算」
を紹介します!ぜひ、ご参考下さい!
SUM関数、SUMX関数の違い
PowerBIのDAX関数の合計系はSUM関数、SUMX関数があります。
SUMX関数はSUM関数とは異なり、式を追加した合計を計算することができます!
【SUM関数】構文
=SUM(<column>)
合計したい列を指定
【SUMX関数】構文
=SUMX(<table>, <expression>)
つまり、
=SUMX(テーブル, 式)
テーブル:データテーブルを指定
式:列同士の式を指定(掛け算、引き算、割り算など)
つまり、SUMX関数は式の結果を合計できる!
それでは、購入リストのデータを用いて具体的にSUMとSUMXの違いを説明していきます!
SUMX関数で売上合計を計算
それでは、SUMX関数で売値と購入数を掛け算した売上合計をメジャーで追加していきます。
◆SUMXで売上合計メジャーの追加
・使用するデータ
PowerBIにインポートしているデータは下記の通りで、「製品」「日付」「購入数」「売値」などがのった購入リストになります。
ここに新しいメジャーでSUMXで「売値」×「購入数」をした売上合計SUMXのメジャーを追加します。
「新しいメジャー」をクリックしメジャーを追加
メジャー名:売上合計SUMX
関数:SUMX関数
=SUMX(テーブル, 式)
テーブルはもちろん購入リスト、式は「売値」列と「購入数」列を掛ければOKなので、
売上合計SUMX = SUMX(‘購入リスト’,’購入リスト'[売値]*’購入リスト'[購入数])
これで、SUMX関数を用いて、式を追加した売上合計をメジャーで追加できました!
レポート画面で「製品」と追加した「売上合計SUMX」のテーブルを作成して値を確認します。
無事、売上合計を表示できています。
テーブルの作り方、メジャーと列の違いは下記をご参考下さい。
・PowerBIでテーブル作成、条件付き書式の設定方法の紹介
・PowerBIのメジャーと新しい列の違い、データ加工方法
ちなみに…
SUM関数で同様のことをする場合は、下記のように一回「売上列」を追加する必要があり、ひと手間多くなります。
新しい列を追加し、
売上を計算した列を追加。
売上(売値×購入数) = ‘購入リスト'[売値]*’購入リスト'[購入数]
レポート画面で表示させると、先ほどのSUMX関数と同様の結果になります。
つまり、SUM関数とSUMX関数の違いは、式の結果を合計できるかどうかです!
PowerBIでSUMIFS関数的な計算をする方法
PowerBIのDAX関数でSUMIFやSUMIFS関数的なことをする方法はSUMやSUMX関数とセットで「CALCULATE関数」を使います。
【CALCULATE関数】構文
=CALCULATE(<expression>[, <filter1> [, <filter2> [, …]]])
つまり、
= CALCULATE(式,フィルター①,フィルター②,…)
フィルター箇所に条件を追加して計算できる関数
つまり、CALCULATE関数の式にSUM関数を入れてやれば条件付きの合計の計算ができます!
例えば性別が女性の売上合計を求めたい場合は、
=CALCULATE(SUM(’売上列),’性別列=”女性”)
となります。フィルター①、フィルター②…と追加していけば複数条件を指定することも可能です。
下記でCALCULATE関数を詳しく説明していますので、ぜひご参考下さい。
・CALCULATE関数で条件付きの合計や平均、カウント
◆CALCULATE関数で条件付きの合計
今回のデータを用いて、複数条件を満たす場合の合計を具体的に説明していきます。
先ほどと同様にメジャーを追加し、「性別」が女性かつ「地域」が関東の売上合計を設定していきます。
メジャー名:女性かつ関東の売上合計
関数:CALCULATE関数、SUM関数
=CALCULATE(式,フィルター①,フィルター②,…)
式にSUM関数で売上列
フィルターに性別列=女性、地域列=関東を複数設定!
女性かつ関東の売上合計 =
CALCULATE(
SUM(‘購入リスト'[売上(売値×購入数)]),
’購入リスト'[性別]=”女性”,’購入リスト'[地域]=”関東”)
※売上(売値×購入数)は先ほど作った列ですので、ここはSUMX関数の売上合計でもOKです。
これで、購入者が女性かつ、地域が関東の売上合計をメジャーで追加できました!
レポート画面で確認し、正常に計算されていることが確認できます。
これで、SUMIFS関数と同じこともDAX関数でできました!
CALCULATE関数の式にSUM関数を入れてやれば条件付きの合計ができますね!
PowerBIでSUMX関数、SUMIFS関数まとめ
今回のまとめ
・SUMX関数は式を追加した合計を計算できる
・ExcelのSUMIFはPowerBIのDAX関数には無い
・SUM関数をCALCULATE関数で囲むだけで代用可能!
SUMX関数やCALCULATE関数とセットで使ってSUMIFS的な計算をする方法は、非常によく使うので、ぜひマスターしておきましょう!
下記でPowerBIの便利機能やDAX関数をまとめています。 ぜひご参考下さい!
最後まで読んでいただきありがとうございました!
記事が良ければ☟クリック応援よろしくお願いします!!
コメント