Power BI - 3つ以上のテーブルを1つのレポート上でボタンで切り替えながら表示したい場合

こんばんわ。

最近引越しの準備でドタバタしています。

以前書いたこちらの記事で言及していた、
「3つ以上のテーブルを、3つ以上のボタンで切り替えながら1つのグラフ上に表現する」方法として、

1. テーブルを統合する方法
2. HASONEVALUE関数とSWITCH関数で切り替える方法
などがあると記載していたのですが、
そのほかにどんなやり方があるかなぁと少し考えてみたら、

もう1個思いつきました。

3. VARとRETURNで目的の値を個別に集計後、合算するメジャーを作る方法
がありました。

ボタンで切り替えたい場面の想定

3つ以上あるテーブルを1枚のレポート上でボタンで切り替えながら表示させる場合、各ボタンはお互いにどのような関係にあるのかを整理しないと説明が難しいので、ひとまず以下のように分類します。

① 各ボタンの関係はそれぞれ独立排反
② 各ボタンは同じ属性に包含される並列の関係

えと、、つまり、例えますと、
①は、「売上」(=ボタン1)と「利益」(=ボタン2)のように、合計して意味のある数字がでてこない項目というイメージで、
②は、「みかん」(=ボタン1)と「りんご」(=ボタン2)と「ばなな」(=ボタン3)のそれぞれの売上であり、合計すると店舗売上になる!といったイメージです。
(わかりづらい??)

①の場合は、2つ以上選択して合計を出すニーズがないので(合計しても意味のない数字がでてくるので)、配置したボタンに対してスライサーの書式>選択範囲のコントロール>単一選択 をオンにして制御すればおしまいだと思います。

なので、今回は②のケースについて、
上述の1~3でやるとどうなるか、書きたいと思います。

使用するサンプルデータ

3種類の商品(「みかん」と「りんご」と「ばなな」)の売上高テーブルが、それぞれ1つづつ、計3テーブルあるとします。
具体的には以下の通りです。

画像1

画像2

画像3

1. テーブルを統合する方法

オーソドックスでやりやすい方法だと思います。

Step1 各テーブルで、列の追加>カスタム列 から、「商品名」の列を追加します

こんな感じで↓ 追加すると、

画像4

こうなります↓

画像5

この操作をそのほかの2つのテーブル(りんごとばなな)についても行います。(この際、追加する列の名前は3つすべて完全に一致させる必要があります。後でテーブルをマージする際に、同じ意味合いの列であると判定されなくなってしまうので)

Step2 次に、どれでもよいので1つのテーブルを開いている状態から、
ホーム>クエリの追加 を選択します。

画像6

そしたら、「追加するテーブル」欄に統合したいすべてのテーブルが表示されるように、「利用可能なテーブル」欄から追加するテーブルを移動させます。(追加ボタンorダブルクリックで移動できます)

画像7

追加したらこうなりますので、OKを押します。

画像8

そしたら、最初に表示していたテーブルに他のテーブルが統合され、1つのビッグテーブルになりました!(私はBANANAテーブルを開いた状態で「クエリの追加」をしましたので、BANANAテーブルにその他のテーブルが統合されました)
※留意点として、3つのテーブルを完全に1つのテーブルとしてきれいに統合させるには、すべての列の名称が一致している必要があります。

画像9

細かいですが、もう元のBANANAテーブルではなくなっているので、BANANAテーブルの名称を変更しておきます。

画像10

(もし、「BANANAテーブルも残したうえで、4つ目のテーブルとして統合されたテーブルを用意したかった!」という人は、BANANAテーブルを複製したうえで、その他の2つのテーブルを統合すればよいと思います。複製はテーブル名の上で右クリック>複製 でできます)

Step3 あとはレポートに配置するだけ!

クエリエディタを閉じて、レポート画面に移動します。
あとは、こんな感じでグラフのパーツを配置していきます。

画像11

↑ばななが押された状態だと、ばななだけが集計されていて、
↓ばななに加えて、みかんも押された状態だと、両方集計されます。

画像12

3つとも押された状態だと、、

画像13

3つとも集計対象になっていますね!

2. HASONEVALUE関数とSWITCH関数で切り替える方法

このやり方は、統合対象のテーブルが増えれば増えるほど現実離れしたメジャーの長さとメンテナンスの困難さを引き起こすので、
理論的にはできますが、実務的には避けるべき方法なので今回は書きません、、(例えばボタンが3つなら、「みかん、ばなな、りんごどれか1つだけの合計を出す場合」と「みかんとばなな、ばななとりんご、みかんとりんごの2つの合計を出す場合」と「みかんとばななとりんごの合計を出す場合」を想定してDAX式を組む必要があるので、ちょっと(説明も・・)避けたいやり方です)

3. VARとRETURNで目的の値を個別に集計後、合算するメジャーを作る方法

このやり方は、結構使えると思います。

が、、

今日はお酒を飲んでしまって睡魔が襲ってきたので、、、
気になる方がいれば、コメント頂ければまた書いてみたいと思います。




この記事が気に入ったらサポートをしてみませんか?