ねこ吸いたい

勉強と読書記録など

【Tableau Tips】いつでも作れる会計年度

Tableauを仕事用に使っていると、ほしい会計年度がうまく出てこないことがあります。毎回検算用Vizを作るのはつらいので、色々試した結果を残しておきます。

Tableau Desktopの「年度開始月」設定機能

そもそもTableau Desktopには年度始まりを設定する機能があります。対象の日付を右クリック > 規定のプロパティ > 会計年度の開始 で指定できます。

それでええやん、と思うじゃないですか。そうでもないのです。

  • 想定した年度より大きい

例えば年度始まりを4月にすると、2022年4月は2023年度になります。日本では2022年度と表示されてほしいところですが、Tableauは米国基準の会計年度を表示します。米国基準だと締めの月(=2023年3月)を基準に年度表示されるため、1つ大きい数字が出てくるんですね。

  • Tableau Cloud/ServerのWeb編集では設定できない(2023年1月時点)

この機能はTableau Desktopのみで使用できます。Tableau CloudやServerのWeb編集を中心に使う方やExplorerユーザの方だと、別の方法で年度を表示する必要があります。

 

1大きいなら1引けばいいじゃない

もし「会計年度の開始」を設定できた場合は、こちらのKB(KnowledgeBase)が役に立ちます。出てきた年度から1を引いてしまえばいいのです。

会計年度が予想より大きい | Tableau Software

 

うるう年を考慮する

これで解決…と思いきや、そうはいきません。そう、うるう年です。上記のKBでは対象の日付から1年引きますが、うるう日から1年引くと存在しない日付が発生してしまいます。

  1. 2020年2月29日から1を引く
  2. 2019年2月29日は存在しない
  3. 2019年2月28日に丸められる

日付単位で数値を表示したい場合、2020年2月28,29日のデータがまとめて2020年2月28日に丸められるため、この方法はそのまま使えません。逆に日付単位では見せない、月単位でいい場合は気にしなくて済む可能性があります。

 

どこでも使える会計年度計算フィールド(4月始まり)

では「会計年度の開始」が利用できず、日単位の分析もあってうるう年も気にする人はどのように会計年度を表現すればよいのでしょうか。そんなときはほしい日付を計算フィールドで作っておいて、階層化します。

  • 年度

//月が3以下なら年から1引く
IF MONTH([オーダー日])<=3
THEN YEAR([オーダー日])-1
ELSE YEAR([オーダー日])
END

  • 上期下期

IF MONTH([オーダー日])<=9 AND MONTH([オーダー日])>3
THEN "上期"
ELSE "下期"
END

  • 四半期

IF MONTH([オーダー日])<=3 THEN 4 
ELSEIF MONTH([オーダー日])<=6 THEN 1
ELSEIF MONTH([オーダー日])<=9 THEN 2
ELSE 3
END

MONTH([オーダー日])

 

できあがったら元にした日付(ここではオーダー日)を使って、検算しておきましょう。

 

まとめ

Tableau Desktopがなくても、Explorerユーザでも、計算フィールドだけでできる会計年度計算でした。

会計年度の設定自体は便利なのですが、いつでも使える計算フィールドが手元にあると安心です。

サンプルワークブック(.twbx)のDLはこちら