Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
ピボットテーブルで売上集計を作っています。
簡単な例で申し上げますと
年月テーブルがあり そこから例えば 201304 201404 201405 の3か月を選択したとします
集計数式は単純で sum( sales) です。
その隣の列に 前年同月売上 を出したいと思っています
その場合は 選択したものの各々の1年前 すなわち 201204 201304 201305 の 合計を出そうとしています
その部分の 数式を書きたいのですが
マニュアルでは SET分で Year = { $(=(max(Year) -1 )) } が紹介されているのですが、この場合は
上記ではないと思います。 各々の選択された 3つの月を それぞれ 1年前にして 前年集計を出したいので
どなたか数式例をご教示戴けないでしょうか 宜しくお願いいたします。
すいません、replace関数はいりませんでした。
sum({<年月={$(=chr(39)&concat(DISTINCT (年月-100),chr(39)&','&chr(39)) & chr(39))}>} Sales)
軸を 『年度+月』 にしてると横に並ばなくないですか?
私が前に作ったのは、下記のような表で、左から
月(軸) → = month ( sales ) & '月'
実績(以下数式) → Sum ( sales )
累積 → RangeSum ( Above ( Sum ( sales ) , 0, RowNo()))
前年実績 → Sum ( {$<年度 = {$(#=Only(年度)-1)}>} sales ) ・・・
みたいな感じにしてみました。
年度はリストボックスで選択できるように作ったんで、今のだけ出すならset分析の中身がOnlyじゃなくmaxですかね。
参考までに。
軸項目は何になりますか?
これによって方法が変わってきます。
軸に年月はありません。 あくまでリストボックスで対象年月を選択します。
ピボットは 簡単には こんな感じです。
数式は面倒ですが、concat関数とかを使用して対応可能です。
sum({<年月={$(=chr(39) & replace( concat(DISTINCT (年月-100),',') ,',',chr(39)&','&chr(39)) &chr(39))}>} Sales)
QVから貼り付けできなかったので書式が正しいか確認が必要ですが、上記で前年実績が出ると思います。
年月が日付型の場合は、年月-100の部分をAddmonth(年月,-12)に置き換えれば良いはずです。
すいません、replace関数はいりませんでした。
sum({<年月={$(=chr(39)&concat(DISTINCT (年月-100),chr(39)&','&chr(39)) & chr(39))}>} Sales)
【確認が遅れて申し訳ありませんでした。】
お!!!! なるほどなるほど!
concatで条件を並べる訳ですね。非常に参考になりました。有り難うございました!