見出し画像

Tableauを極めるやってみた~Day4~

こんばんは!

HUNTER×HUNTERの軍儀がついに商品化されるんですって!
通常版は4,840円、ハイエンド版が48,400円 ※税込

というわけでTableauを極めるDay4、やっていきたいと思います!

今回のお題はこちら!

MTDと?YTD?
私のような情弱にはひとつも馴染のない言葉です!

とりあえず動画を見ないでやってみましょう!





・・・・・・😭




教えて!Sugimuraさん!

STEP1

パラメーター、レポート日の作成
日付型でパラメーターを作成します。

日付のパラメーターを作成する際は、許容値を「範囲」で作成しがちでしたが、「すべて」にしておけば、カレンダーで日付の選択ができるのですね。


STEP2

MTD売上を作成する
※ MTDとは「month-to-date」の略で、その月の初日から同月のその時点(今回はレポート月の初めからレポート日)までを表します

計算式はこちら

ZN ( IF [オーダー日] <= [レポート日]
AND DATEDIFF("month",[オーダー日],[レポート日])=0 
THEN [売上] END )

オーダー日がレポート日より前で、オーダー日の月とレポート日の月の差が0であれば、MTDの計算が返される。

検算してみる。

レポート日を「2020/10/07」に設定したので、
「2020/10/01~2020/10/07」の売上が出ればOKですね。

完璧!

STEP3

MTD売上LYを作成する
去年の値の算出

IF DATEADD("year",1,[オーダー日])<=[レポート日]
AND DATEDIFF("month",DATEADD("year",1,[オーダー日]),[レポート日])=0 
THEN [売上]
END

オーダー日をDATEADD関数で1年加算・・・?
去年の売上を出したいのに・・・?
この計算で去年の数値が取れるロジックが理解できない😭

切り分けて考えてみる。

① DATEADD("year",1,[オーダー日])
オーダー日が2020/1/1 だった場合、2021/1/1が返される。



② DATEADD("year",1,[オーダー日])<=[レポート日]
レポート日を2021/12/15にした場合、オーダー日が2020/12/15以前が真、それ以外が偽

③DATEDIFF("month",DATEADD("year",1,[オーダー日]),[レポート日])=0
レポート日は変わらず2021/12/15の場合、2020/12は真、それ以外は偽

④DATEADD("year",1,[オーダー日])<=[レポート日]
 AND
 DATEDIFF("month",DATEADD("year",1,[オーダー日]),[レポート日])=0

組み合わせてみる

レポート日を2021/12/15にした場合、
オーダー日が2020/12/15以前が真、それ以外は偽

オーダー日が2020/12は真、それ以外は偽

なるほど・・・!
取り出したい期間がばっちり取れてますね。

ここまで分解してやっと理解できました・・・!

STEP4

YTD売上の作成
※ YTDとは「year-to-date」の略で、「年度の初日から今日まで (今回はレポート日まで)」を表します

こちらは②の月が年になっただけでシンプルです。

ZN( IF [オーダー日] <= [レポート日]

AND DATEDIFF("year",[オーダー日],[レポート日])=0

THEN [売上] END )

オーダー日がレポート日より前で、オーダー日の年とレポート日の年の差が0であれば、YTDの計算が返される

STEP5

YTD売上LYの作成
はい、先ほど躓いたやつきました。
MTDの時同様にDATEADDで1年加算していきます。

ZN( IF DATEADD("year",1,[オーダー日]) <= [レポート日]

AND DATEDIFF("year",DATEADD("year",1,[オーダー日]),[レポート日])=0

THEN [売上] END )

あえてデータを1年前倒してシフトさせることによって、昨年のデータを強制的に1年プラスしてレポート日と比較します。
そうすると昨年の集計結果が今年のパラメーターで返ってくるので、今年と比較することができます。


STEP3では全く仰られている意味がわからなかったことが、紙一重で理解できるようになりました!分解しておいてよかった・・。


そんなこんなで
無事完成しました!

業務のいろんな場面で使えそうな技ですね。

また一つ大人になりました!
引き続きやっていきます!


いいなと思ったら応援しよう!