質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Power BI

Power BIは、マイクロソフト社が提供しているBIツールです。レポートの作成・共有、エクセルや会計システムなどさまざまなソフトウエアのデータをグラフやチャートに変換。データの分析・解析などにも利用できます。

Q&A

解決済

1回答

5090閲覧

【Power BI】動的なメジャーの値を参照するカードorテキストボックスの作成について

CookieM

総合スコア7

Power BI

Power BIは、マイクロソフト社が提供しているBIツールです。レポートの作成・共有、エクセルや会計システムなどさまざまなソフトウエアのデータをグラフやチャートに変換。データの分析・解析などにも利用できます。

0グッド

0クリップ

投稿2022/06/19 05:30

編集2022/06/25 10:13

【元データ】

▼都道府県別データ
イメージ説明

やりたいこと

1.都道府県のスライサーの選択状態に応じて、人口の多い件のランキングをメジャーにて生成(※表内では「全体」となっていますが元データ画像の「人数」と同じものです)
イメージ説明
▼メジャーのコード

DAX

1rank2_全体 = 2 RANKX( 3 ALLSELECTED(Sheet1), 4 CALCULATE(SUM(Sheet1[全体])), 5 , 6 DESC 7 )

2.1の図版内の特定の行(県)をクリックしたときに、「rank2_全体」の値を表示する(上図の例では黄色ハイライトの福島をクリックすると、福島の「rank2_全体」の値である「4」が表示される。)
表現方法はカードかテキストボックスになると思い以下試していますがここで詰まっています。

試したこと

1.可視化ツールのカードを用意し、そのフィールドに「rank2_全体」をセットする
2.新たに以下のメジャーを用意し、カードのフィールドにセットする

DAX

1count_rank = 2CALCULATE( 3 [rank2_全体], 4 ALLSELECTED(Sheet1[都道府県]) 5)

3.テキストボックスの値に「rank2_全体」をセットする

いずれの場合もテーブル内の行クリックによって動的に値が切り替わることがなく、常に「1」が表示されてしまっています。

スライサーの選択状態でカードの中身を書き変えるような情報はあったのですが、今回の解決に自力では繋げられずおります・・・
動的なタイトルの付け方 Power BI, DAX
解決策を思いつかれる方がおられましたらお知恵をお借りできますと幸いです。。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

以下メジャーで実現できると思います。

count_rank = CALCULATE( [rank2_全体] ,ALL(Sheet1[都道府県]) ,ALLSELECTED(Sheet1[都道府県]) )

スライサーで選択された項目でテーブルにフィルターがかかっている状態なので、ALL関数でフィルターを解除した状態のテーブルにする必要があります。

2022/6/21 追記↓

すみません、質問内容を勘違いしておりました。

カードでの動的な表示ですが、メジャーを使用する必要がないと思います。
対象のテーブルで、列追加をし、以下式を入力します。

ランキング = RANKX('都道府県テーブル',[人数])

上記で作成した「ランキング」列をカードに使用すれば動的に切り替わると思います。
テーブル上でランキング列を持ってしまえば、[rank2_全体]メジャーは不要になるかと思います。

不明点等あればコメントお願い致します。

投稿2022/06/20 23:58

編集2022/06/21 13:19
mhoby_vt

総合スコア225

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

CookieM

2022/06/22 06:57

ご回答ありがとうございます! 私の質問の仕方がわかりづらくお手数をおかけしてしまい申し訳ございません。 やりたいことを時系列で記載しますと以下の通りとなります。 1.スライサーで都道府県を選択する(複数選択も可) 2.選択された都道府県の中で人口ランキングを算出する(メジャー「rank2_全体」で実装中のもの) 3.2をテーブルやグラフで表現する 4.3の中の特定の県をクリックすると2で出した順位が表示される(カードorテキストボックス) 今回ご提案いただきました新列追加でランキング列を作るというのを試してみますと、 4でクリックした際に、2で作ったランキングではなく全47都道府県の中での順位が表示されているようです。 スライサーを最初にかませた動的な値であるためメジャーでの作成が必要かと思ったのですがいかがでしょうか。 認識違い等ございましたらご指摘くださいませ、よろしくお願い致します。
mhoby_vt

2022/06/23 04:09

さらに勘違いをしておりました。 申し訳ございません。 やりたい内容、理解致しました。 結論から申し上げますと、テーブルやグラフで選択した都道府県のランキングを、カードやテキストボックスで表示することはできないです。 テーブルやグラフですと、グラフ上に都道府県の項目を持っているため、スライサーで選択した複数の都道府県を対象にランキング処理が行われますが、カードやテキストボックスは、都道府県の項目を持たないため、テーブルやグラフで選択した都道府県項目のみで、ランキングの処理が行われます。(1つのみなので、1しか表示されない) カードやテキストボックスの仕様上、実現が不可となります。
CookieM

2022/06/25 01:13

重ねてご回答ありがとうございます。 挙動を見ていてもいただいた回答と一致しますし、現行仕様として難しいのですね… 別のアプローチを考えてみます、お付き合いいただきありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問