Power BIで日付テーブルを作る


1. テーブルを作る

左タブ [データ] > 上部タブ [モデリング] > [新しいテーブル] > テキストボックスに下記のDAX関数をコピペ

Calendar = 
ADDCOLUMNS (
CALENDAR (DATE(2000,1,1), DATE(2025,12,31)),
"DateAsInteger", FORMAT ( [Date], "YYYYMMDD" ),
"Year", YEAR ( [Date] ),
"Monthnumber", FORMAT ( [Date], "MM" ),
"YearMonthnumber", FORMAT ( [Date], "YYYY/MM" ),
"YearMonthShort", FORMAT ( [Date], "YYYY/mmm" ),
"MonthNameShort", FORMAT ( [Date], "mmm" ),
"MonthNameLong", FORMAT ( [Date], "mmmm" ),
"DayOfWeekNumber", WEEKDAY ( [Date] ),
"DayOfWeek", FORMAT ( [Date], "dddd" ),
"DayOfWeekShort", FORMAT ( [Date], "ddd" ),
"Quarter", "Q" & FORMAT ( [Date], "Q" ),
"YearQuarter", FORMAT ( [Date], "YYYY" ) & "/Q" & FORMAT ( [Date], "Q" )
)

2. 日付テーブルとしてマークする

[日付テーブルとしてマークする] > [Date]を選択

3. Calendarテーブルと紐づけたいテーブルにリレーション設定用の列を作成する

Date列同士だと、時刻まで加味されてしまう。今回は日単位でリレーションを設定したいので、リレーション設定用のカラムを作る。今回はDateAsIntegerを使う。

左タブ [データ] > 上部タブ[モデリング] > [新しい列] > 下記DAX関数を追加

DateAsInteger = FORMAT ( [Date列], "YYYYMMDD" )

3. リレーションを設定する

左タブ [モデル] > 接続したいテーブルに[DateAsInteger]フィールドをドラッグアンドドロップ

参考

How to create a date table in Power BI in 2 simple steps - Kohera
Lesson 4: Create Relationships | Microsoft Docs
Re: Date Table Data Mixup - Microsoft Power BI Community