DAX関数、PowerPivotが、イマイチよくわからない。
1. 日ごとのデータの、複数の元データで
エリア、年月を共通キーにしてリレーションシップ張ってピボットで集計するとき、
エリア、年月で特定したつもりが、それ以外の合計を「(空白)」として集計してしまうことがある。
リレーション張るのが足らないようだが、よく分かっていない・・・
2. 年度ごとの月推移グラフを作るとき、
年度途中の集計でも、エリアごとに月遅れがある場合でも
12ヶ月分固定スロットの積み上げ棒グラフを作ろうとした。
X軸用に、まだ元データにはない将来の年月も含めた年度ごとの暦年月リストをクエリーで作って
これをフィルターの選択肢元にしたくて、
ピボットテーブルのあるシートのイベントでこのクエリーの更新と
ピボットテーブルのデータ元の更新かけたら
マクロがループに陥ってもうた。
・・・等々。
結局我流で、ピボットテーブルのフィルターだけ使って、
その選択値を名前定義でクエリーに取り込んで、
ピボットテーブルのシートのイベントでクエリーをマクロ更新させて
グラフ用データにしてはいるが、
こんな細かいこと、DAX関数やピボットテーブルで解説している
本とかWebサイトはないものか?
Excel ピボット Power Pivot DAX関数 質問スレ
5デフォルトの名無しさん (ワッチョイ f9da-BvZE)
2021/11/03(水) 20:46:19.10ID:0ueGLnXj06デフォルトの名無しさん (ワッチョイ c784-fPib)
2023/08/16(水) 16:05:04.31ID:M12vmMNh0 (W。-)v-~
7デフォルトの名無しさん (ワッチョイ e302-tCnS)
2023/09/08(金) 19:47:40.93ID:CTym9XnQ0 なんか楽しいこと、思いつかないかな
8デフォルトの名無しさん (ワッチョイ 8501-u5XH)
2023/10/01(日) 09:52:08.54ID:lwwAe0aV0 テスト
9デフォルトの名無しさん (スププ Sd43-nGkL)
2023/10/01(日) 11:05:37.12ID:WuVr8Gf6d Excelと縁を切れば解決
10デフォルトの名無しさん (ワッチョイ cf10-zGmP)
2024/02/22(木) 18:00:44.01ID:QdbeD+B20 いまいちフィルターコンテキストがよくわかんね
ちょっとDAX変えてみたら数値違っててふぁ!?ってなる
ちょっとDAX変えてみたら数値違っててふぁ!?ってなる
11デフォルトの名無しさん (ワッチョイ 06da-Ky5X)
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でしか使えない?
以下の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でしか使えない?
12デフォルトの名無しさん (ワッチョイ 06da-Ky5X)
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関数とも、だいぶ作りが違う。
>>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関数とも、だいぶ作りが違う。
13デフォルトの名無しさん (ワッチョイ 21da-YTH6)
2024/10/26(土) 20:59:06.16ID:f26vHvwK0レスを投稿する
ニュース
- 日銀、0.75%に利上げ - 30年ぶり高水準、物価高抑制 ★2 [ぐれ★]
- 【速報】松本人志、大みそかにテレビ“復帰” [Anonymous★]
- 【スクープ】敏腕プロデューサーSKY-HIが未成年女性アイドル(17)を深夜に自宅呼び出し、「かわいすぎる死ぬ」「だぁいすき」などのLINEも★2 [Ailuropoda melanoleuca★]
- 【大阪】 市場のゴミ置き場に“ヒトの内臓”か 大量の瓶が段ボール箱に…医療廃棄物の可能性 大阪市中央卸売市場 [少考さん★]
- 首相官邸筋「私は核を持つべきだと思っている」 オフレコ非公式取材にて発言★2 [パンナ・コッタ★]
- 中谷元・前防衛相、責任論に言及「軽々に話すべきではない」官邸筋の核兵器保有発言 [少考さん★]
- 日銀0.25%利上げ決定。好感して円安 [256556981]
- 【朗報!】国債金利2.009%! [219241683]
- え、待って🏡がないやん❗❗❗
- (ヽ`ん‘)「おいAmazon!ポストに投函された荷物がはみ出てたから盗まれたぞ!」Ama「知るか!!お前のアカウント制限したからな!!」 [884040186]
- Vtuber「ATMで5万円引き出したら4万円と1枚が千円札だったんだけど…😰」→炎上。 [153490809]
- 【悲報】仏紙ル・モンドさん、「推し活」の正体を見破ってしまう [268718286]
