Power BI 最短で日付テーブルで作る方法


Power BIで時系列分析を行う上で、別途日付テーブルを持っておくと諸々分析しやすいのですが、

わざわざExcel等で日付テーブルを作ってインポートする必要はなく、Power BI Dekstop内の簡単なクエリで対応できたので共有です。

 

Excelで作るとなるとデータを都度更新する一手間発生するのですが、

このやり方であれば効率的にデータを作れますし、マニュアルで作るよりもミスが少なく確実なのでおすすめです。

 

 

日付テーブルの作る2つの方法

 

まず日付テーブルを作る方法ですが、簡単な方法としては主に下記2つがあります。

 

  1. CalenderAuto関数を使う
  2. Calender関数を使う

 

実際の作り方の前にまずはそれぞれの違いを見ていきましょう。

作り方を知りたい場合は、ここは飛ばしていただいて大丈夫です。

 

1.CalenderAuto

こちらはPower BI内のデータモデルを自動で読み取って、その読み取った情報に基づいて日付テーブルを自動で作ってくれる関数です。

 

例えば下図のように2019年1月1日からの商品売上データがあるとします。

 

「新しいテーブル」をクリックし、

DateTable = Calenderauto([表示させたい年度末の月])と入力します。

 

日系上場企業の多くは3月末が年度末なので、=CalenderAuto(3)と入力します。

すると、下図の通り年度初めとなる4月からのデータが自動で作成されることが分かります。

 

 

このようにCalenderAuto関数の方では、最初にインポートした「売上データ」が、2019年1月~のデータであることを自動で読み取り

その期間をカバーする2018年4月1日からのデータを自動で作成します

 

この方法ではデータを自動で更新し続けてくれるので、将来的なデータのメンテナンスが不要になるという利便性があります。

 

2.Calender

一方2つ目の方法であるCalender関数は、期間を自分で指定して日付テーブルを作成していきます。

下図の通りです。

ここでは=Calender (Date(2000,1,1), Date(2025,12,31))と日付の期間を指定しているので、2000/1/1~2025/12/31までの指定して期間分のデータが作成されます

こちらの方法では作成する期間を任意で指定できるので、不要な期間分のデータは取り除けたり、自分のコントロール下でデータが作成できるといった利便性があります。

 

追加情報(列)を加える

先程、Calender関数・CalenderAuto関数で作った日付テーブルに追加の情報を加えていきます。

例えば、日付情報から「月」のみを抽出した列を作成したり、「年」のみを抜き出した列を追加したりです。

 

方法としては、「新しい列」をクリックして新規で列を作成し、関数欄にYear = Year(‘Date”[Date])等の関数を加える形です。

こんな感じで表示したい情報(月、曜日、etc)を1つずつ書いていくことでデータを日付データを作成できます。

左から、

Month = MONTH(‘DateTable'[Date])

Month+月 =
‘DateTable'[Month] & “月”

Year = YEAR(‘DateTable'[Date])

曜日 = WEEKDAY(‘DateTable'[Date], 2)

って感じです。

 

もっと簡単に素早く作る方法

上記の方法だと、レポート毎で作業が発生するので手間がかかります。

そこで、下記のような関数を書き、他レポートでも流用できるようにしてみました。

※随時内容更新して改善しています!!ご意見あればお願いします

 

●CalenderAuto バージョン(3月が会計年度の期末月として場合)
Date =
ADDCOLUMNS (
CALENDARAUTO(3),
“年”, YEAR ( [Date] ),
“月数”, FORMAT( [Date], “MM”),
“月”, FORMAT ( [Date], “MM” & “月”),
“年/月”, FORMAT ( [Date], “YYYY/MM” ),
“会計年度(年)”, IF(QUARTER([Date]) = 1, YEAR([Date])-1, YEAR([Date])),
“四半期(1月)”, QUARTER([Date]),
“会計年度(四半期)”, IF(QUARTER([Date])=2,1,IF(QUARTER([Date])=3,2,IF(QUARTER([Date])=4,3,4))),
“曜日(英語)”, FORMAT ([Date], “ddd”),
“曜日(日本語)”, IF(FORMAT ([Date], “ddd”)=”Sun”,”日”,IF(FORMAT ([Date], “ddd”)=”Sat”,”土”,IF(FORMAT ([Date], “ddd”)=”Mon”,”月”,IF(FORMAT ([Date], “ddd”)=”Tue”,”火”, IF(FORMAT ([Date], “ddd”)=”Wed”, “水”,IF(FORMAT ([Date], “ddd”)= “Thu”, “木”, IF(FORMAT ([Date], “ddd”)=”Fri”,”金”))))))))
●Calenderバージョン(2015年1月1日~2025年12月31日)
Date =
ADDCOLUMNS (
CALENDAR(DATE(2015,1,1),DATE(2025,12,31)),
“年”, YEAR ( [Date] ),
“月数”, FORMAT( [Date], “MM”),
“月”, FORMAT ( [Date], “MM” & “月”),
“年/月”, FORMAT ( [Date], “YYYY/MM” ),
“会計年度(年)”, IF(QUARTER([Date]) = 1, YEAR([Date])-1, YEAR([Date])),
“四半期(1月)”, QUARTER([Date]),
“会計年度(四半期)”, IF(QUARTER([Date])=2,1,IF(QUARTER([Date])=3,2,IF(QUARTER([Date])=4,3,4))),
“曜日(英語)”, FORMAT ([Date], “ddd”),
“曜日(日本語)”, IF(FORMAT ([Date], “ddd”)=”Sun”,”日”,IF(FORMAT ([Date], “ddd”)=”Sat”,”土”,IF(FORMAT ([Date], “ddd”)=”Mon”,”月”,IF(FORMAT ([Date], “ddd”)=”Tue”,”火”, IF(FORMAT ([Date], “ddd”)=”Wed”, “水”,IF(FORMAT ([Date], “ddd”)= “Thu”, “木”, IF(FORMAT ([Date], “ddd”)=”Fri”,”金”))))))))

下図のように新しいテーブルを作成を選択して、

ペタッと貼り付けるだけで日付テーブルが完成します。

後は列を昇順で並び替えます。

以上です!

※You Tubeでも紹介しています!

 

この日付マスタを使えば、とりあえず曜日毎での分析や、会計年度毎での分析等、分析の幅が広がると思うので参考にしてみて下さい。

その他欲しいデータがあれば教えて下さいな。

 

 

Power BIを学習しよう!!

●Power BIの使い方まとめ(初級編)

下記ページにPower BIを使い始めたばかりの人向けに、Power BIの学習方法をステップbyステップで紹介しています。

Power BI初級者にまず見ていただきたいまとめページです。

Power BIの使い方大全(初級編)

 

●DAX関数の使い方まとめ

Power BIをやる上では避けては通れないDAX関数を色々とまとめたのがこちらのページです。

政府統計の人口データを、様々なDAX関数を使って計算してみました。

Power BI DAXの使い方(初級12本)

 

●細かい使い方は動画で学習する

Power BIは様々な機能があり、定期的に更新もされます。

Power BIの細かい機能や使い方、気になった最新の機能アップデート情報等はYou Tubeに動画上げているので、こちらを参考にしてみて下さい。

You Tube:『Zou Channel

 

●Power BIレポートの運用方法を考える

少し応用編としてPower BI×RPAを活用した全自動レポートを作る方法についてもまとめました。

Power BIで作ったレポートをどのように効率運用していくべきなのか、あまり細かくは書けないですが、概要として参考にしてみて下さい。

Power BIとRPAで全自動レポートを作成する方法

 

●Power BIレポートのテンプレート集

Power BIを活用して作ったレポートを一部共有しています。Power BIで何ができるのか?イメージを持ってもらえるかと思います。

Power BIレポートのテンプレート集

 

 

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


Scroll to Top