【PowerBI】カレンダーテーブルの作り方、テンプレあり(CALENDAR関数)

CARENDAR PowerBI カレンダーテーブル 日付テーブル CARENDARAUTO関数DAX関数
スポンサーリンク

PowerBIではカレンダーテーブルを作成し、日付でスライサー設定をするのは必須です!

今回はCALENDAR関数、CALENDARAUTO関数を用いて、日付テーブルを自動作成する方法を紹介します。

・PowerBIでカレンダーテーブルを作成できるDAX関数
・PowerBIでカレンダーテーブルの作成(CALENDAR/CALENDARAUTO関数)
・年、月、週、曜日、年度、四半期のカレンダーテーブルのテンプレート

PowerBIで必須の設定ですので、コードのテンプレと合わせて、ぜひご参考下さい!

カレンダーテーブルを作成できる関数

PowerBIでカレンダーテーブルを作成するためのDAX関数は2種類です。

「CALENDAR関数」「CALENDARAUTO関数」を使います。

【CALENDAR関数】構文
 =CALENDAR(開始日,終了日)

指定した開始日から終了日までのカレンダーテーブルを作成

参考:Microsoft Docs CALENDAR関数

【CALENDARAUTO関数】構文
 =CALENDARAUTO()
 モデル内のデータの最も古い日付と最も新しい日付の間のカレンダーテーブルを自動作成

取り込んだデータに基づいて自動的に期間が設定される!

参考:Microsoft Docs CALENDARAUTO関数

つまり、
カレンダーを作成したい期間を指定できるのがCALENDAR関数
モデル内のデータに基いて自動的に期間が設定されるのがCALENDARAUTO関数です!

それでは、具体的に使い方を紹介します。

スポンサーリンク

CALENDAR関数でカレンダーテーブルの作成

CALENDAR関数を使って、期間を指定した日付データのテーブルを作成していきます。

まずは、データ画面から、「新しいテーブル」をクリック

新しいテーブル PowerBI CARENDAR関数

次にCALENDAR関数でテーブルを作成します。

テーブル名:日付テーブル
関数:CALENDAR関数
CALENDAR(開始日,終了日)
CALENDAR(“2019/01/01″,”2022/12/31”)

テーブルを作りたい開始日、終了日を入れるだけ!
” ”で囲むことを忘れずに!

CARENDAR関数 DAX PowerBI

これで、開始日の2019/1/1~終了日2022/12/31までの日付テーブルを作成できました!

ちなみに、デフォルトでは書式に時刻も含まれているため、「列ツール」→「データ型」の変更または、「書式」の変更で上記のような日付だけのデータに変えることができます。

CALENDAR関数を使えば指定期間内のカレンダーを簡単作成できますね!

スポンサーリンク

CALENDARAUTO関数でカレンダーテーブルの自動作成

CALENDAR関数では、開始日/終了日を絶対参照的に指定する必要があるので、生データ更新により、その期間外のデータが増えるとエラーがおきたりします。

CALENDARAUTO関数では、生データの期間に基いて日付データテーブルを自動作成されるので、データ更新されても期間を変えたりする必要がありません!

それでは、CALENDARAUTO関数の手順を紹介します。

◆使用するデータ
取り込みデータは下記の通り、2020~2022年までのデータが入っている場合を想定します。つまり、CALENDARAUTO関数だと、この期間内のカレンダーテーブルが自動作成されます。

先ほどと同様に「新しいテーブル」をクリックし、
CALENDARAUTO関数でテーブルを作成します。

テーブル名:日付テーブル2
関数:CALENDARAUTO関数
CALENDARAUTO()

生データの期間内の日付テーブルが自動作成されます!

PowerBI 日付テーブル カレンダーテーブル CARENDARAUTO関数 CARENDAR関数

CALENDARAUTO関数を使って作成しておけば、生データの期間が変わっても自動的に日付データも更新されるので便利です。

スポンサーリンク

カレンダーテーブルのテンプレ公開

PowerBIでグラフの横軸を「年度別」や「月数字」「四半期」などで表示させたい場合がよくあります。毎回カレンダーテーブルを作るのは面倒なのでテンプレートを作成しました。

下記のテンプレートをコピーしてテーブルを追加すれば、
「年、月、週、曜日、年度、四半期」などが入ったテーブルが自動作成されます。

【カレンダーテーブルのテンプレート】

日付テーブルテンプレ =
ADDCOLUMNS(
CALENDARAUTO(),
"年_数値", YEAR ( [Date] ),
"月_数値", MONTH ([Date]),
"月_MM月", FORMAT ([Date], "MM月" ),
"日_数値", DAY ([Date]),
"日_DD日", FORMAT([Date],"DD日"),
"年月_数値", VALUE(FORMAT([Date], "yyyyMM" )),
"年月_yy/MM", FORMAT ( [Date], "yy/MM" ),
"年度_数値",if(MONTH([Date])>3,YEAR([Date]),YEAR([Date])-1),
"年度_数値年度",FORMAT(if(MONTH([Date])>3,YEAR([Date]),YEAR([Date])-1),"0年度"),
"年度四半期_数値", if(MONTH([Date])<4,4,if(MONTH([Date])<7,1,if(MONTH([Date])<10,2,3))),
"年度四半期_Q", if(MONTH([Date])<4,"4Q",if(MONTH([Date])<7,"1Q",if(MONTH([Date])<10,"2Q","3Q"))),
"年四半期_Q", if(MONTH([Date])<4,"1Q",if(MONTH([Date])<7,"2Q",if(MONTH([Date])<10,"3Q","4Q"))),
"週_数値", WEEKNUM([Date],1),
"週_第00週", FORMAT ( WEEKNUM ( [Date], 1 ), "第00週" ),
"曜日_aaa", FORMAT([Date],"aaa"),
"日曜日", FORMAT ( [Date], "DDaaa" ),
"会計年度",if( MONTH ([Date])<4,YEAR ( [Date] )-1,YEAR ( [Date] ))
)

【テーブル作成手順】
①テンプレートのコードをコピー
②新しいテーブルをクリック
③コードの貼り付け
④テーブル作成完了!

PowerBI カレンダーテーブル テンプレート 年度 月 曜日
カレンダーテーブル PowerBI DAX CARENDARAUTO関数 テンプレート

コードの詳細は割愛しますが、CALENDARAUTO関数で日付データを作成したテーブルに、ADDCOLUMNS関数で指定した列を追加しています。

FORMAT関数で年、月などの任意の列を作成しています。FORMAT関数の詳細な使い方が下記をご参考ください!
▶FORMAT関数で日付から年/月/日/曜日を取得

パワークエリで年/月/週/四半期/日/曜日、年度を関数を使わずに抽出する方法は下記をご参考ください!

作成したカレンダーテーブルのDateと生データの日付をリレーションでリンクさせれば、「年度、四半期、曜日、週別」などのグラフ作成が可能です! ぜひご活用下さい。

スポンサーリンク

PowerBIでカレンダーテーブルの作成方法まとめ

今回のまとめ
・期間を指定してカレンダーテーブルを作成したい場合はCALENDAR関数
・データに応じてカレンダーテーブルを自動作成したい場合はCALENDARAUTO関数
・年、月、週、曜日、年度、四半期の列を追加した
テンプレが便利

CALENDAR/CALENDARAUTO関数を用いたカレンダーテーブルの作成は、PowerBIで必須ですので、ぜひマスターしておきましょう!!

下記でPowerBIの便利機能やDAX関数一覧をまとめています。ぜひご参考下さい!

【PowerBI】便利機能9選と学習方法まとめ

よく使うDAX関数まとめ(構文と事例紹介)

最後まで読んでいただきありがとうございました!

記事が良ければ☟クリック応援よろしくお願いします!!

にほんブログ村 サラリーマン日記ブログ IT系サラリーマンへ
にほんブログ村

コメント

タイトルとURLをコピーしました