Excel ピボット Power Pivot DAX関数 質問スレ

2024/04/09(火) 04:08:28.45ID:WWFLUpaA0
Copilotからやっと教わったExcel版PowerPivot用DAX関数の備忘録

以下の3つのクエリー
 Q_カレンダー:[年]、[年月]、[年月日時間帯]・・・
 Q_地点:[地点No]、[地点名]
 Q_Data:[年月日時間帯]、[年月]、[地点名]、[値]・・・
がデータ モデルに接続されていて、
 Q_Data[年月] → Q_カレンダー[年月]
 Q_Data[地点名] → Q_地点[地点名]
でそれぞれリレーションし、スライサーで[地点名]、[年月]を選択できるピボットテーブルがある。
このピボットテーブルに
「それそれの地点ごとの、全期間での[値]の最大値」
([年月]を変えても月次グラフの縦軸[値]スケールを地点ごとにほぼ一定にしたいため)
を列に追加したい場合のDAX関数は、

全期間最大値:=
CALCULATE(
MAXX(
FILTER(Q_Data, Q_Data[地点] = VALUES(Q_地点[地点])),
Q_Data[値]
),
ALL(Q_カレンダー)
)

MAXXとVALUESを使うのと、この構文がミソなのかと。

他にも
VAR SelectedLocation = VALUES(Q_地点[地点])
RETURN
・・・
として一時的に[地点名]を保持する方法も提示されたが、
SelectedLocation にエラーが出て、これはまだInsider版やPower BIでしか使えない?
2024/04/12(金) 23:08:20.61ID:Z4KZtsyr0
またCopilotから教わった。

>>11 はフィルターが2だったけど、
全地点を1つのBookに入れると、Web読み込みもあってさすがに重いので、
1Boookは1地点にした。
ということで、地点指定は不要に。

結果、別テーブルの、リレーションが張ってあるQ_カレンダー[年月]の
フィルター1つだけで指定されている中で、
Q_Data[値]の全期間の最大値を求めるDAX式は、

全期間最大:=
CALCULATE(MAXX(ALL(Q_Data), Q_Data[正側計]))

Q_カレンダー[年月]についての記述は不要で、
ALL(Q_Data)だけで行けるとのこと。

フィルターが2つだった >>11 のDAX関数とも、だいぶ作りが違う。
2024/10/26(土) 20:59:06.16ID:f26vHvwK0
ピボットテーブルは画像も行けるのね
クエリー経由ではないけれど・・・

https://www.youtube.com/watch?v=q31pwb9Sq_I
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況