この記事でできること
✓ RANKX関数の基本的な使い方を理解できる
✓ 売上や集計結果を順位付けできる
✓ RANKX関数で全て1位になる原因を理解できる
✓ ALL関数が必要な理由を理解できる
✓ カテゴリー別の順位付けができる
✓ メジャーを使った順位付けができる
✓ フィルターの影響を考慮した順位付けを学べる
✓ Power BIのマトリックス表で順位を表示できる
詳細解説
DAXのRANKX関数を使えば、集計した値に対して順位付けが行えますのでとても便利です
RANKX関数の文法自体はとても簡単なものですが、実際には少々トリッキーな面があります
文法:RANKX(使用テーブル,順位を判断する値)
*実際には他にも指定できます
作成してみたけど結果が全て1になってしまった、という方も中にはいらっしゃると思いますので、トリッキーな面を中心に解説を行います
解説に使用するテーブル/テーブル名:Tableは以下です。カテゴリーが大小2つあります

こちらのデータから大、小のカテゴリーにて順位付けを行えるようにします
判断に使用する値は予めメジャーで算出しておきます
これが1つ目の大きなポイントです

次に実際にカテゴリー大を順位付けするメジャーを作成します

ここでAllを使用するのが2つ目の大きなポイントです
そして、Allの引数はカテゴリー列も指定します
Allを使用しないと、ビジュアルで表示する時にフィルターが効いて全て1になります
他の言葉で言い換えると、フィルターが効いても他の行の値と比較して順位付けできるようにします

では次にカテゴリー小を順位付けするメジャーを作成します

このメジャーをマトリックス表にセットしてみます

こちらは大カテゴリー内での順位が出力されます
今度は、カテゴリー大の関連はマトリックス表から抜いてみます

これでカテゴリー小の間で順位付けが行えました
繰り返しになりますが、順位付けを行う値は事前にメジャーにしておきましょう!










コメントを残す