【Power BI】外資系にありがちな10月始まりの日付テーブル

日本語で外資系の会計年度に対応

FisicalYear -> Quater -> Month(Eng) の階段をうまく使用したいときに活用できる日付テーブルです。

Fisical Year > Quater > Month

日付テーブルの作成は、ホーム>新しいテーブルから

  1. ホーム>新しいテーブル を選択し、日付テーブルのコードをコピペする
  2. 日付テーブルとしてチェックする

10月年度はじまりと、英語月に対応

  1. 年度の始まりが10月になっている
  2. FY、Quater、FY&Quaterなどの表示をすることができる
  3. 相対月、相対年度を設定しておくことで、過去3年などの範囲のフィルタをかけやすくしている。
  4. 英語の月表示に対応
日付テーブル = 
VAR StartDate="2012/04/01"
VAR EndDate="2025/3/31" 
VAR Today=UTCTODAY()+9/24
VAR ThisFY=if(MONTH(Today)>9,YEAR(Today),YEAR(Today)-1)
VAR BaseCalendar =CALENDAR (StartDate,EndDate)
RETURN
ADDCOLUMNS(
    BaseCalendar,
    "年_数値", YEAR ( [Date] ),
    "年_yyyy年",FORMAT([Date],"yyyy年"),
    "月_数値", MONTH ([Date]),
    "月_MM月", FORMAT ([Date], "MM月" ),
    "月_MMM", FORMAT ([Date], "MMM" ),
    "日_数値", DAY ([Date]),
    "日_DD日", FORMAT([Date],"DD日"),
    "年月_数値", VALUE(FORMAT([Date], "yyyyMM" )),
    "年月_yy年MM月", FORMAT ( [Date], "yy年MM月" ),
    "yy-MMM", FORMAT ( [Date], "yy-MMM" ),
    "年度_数値",if(MONTH([Date])>9,YEAR([Date]),YEAR([Date])-1),
    "FY_FYxxyy", "FY" & RIGHT(VALUE(if(MONTH([Date])>9,YEAR([Date]),YEAR([Date])-1)),2) & RIGHT(VALUE(if(MONTH([Date])>9,YEAR([Date]),YEAR([Date])-1)+ 1),2) ,
    "年度_0年度",FORMAT(if(MONTH([Date])>9,YEAR([Date]),YEAR([Date])-1),"0年度"),
    "年度四半期_数値", if(MONTH([Date])<4,2,if(MONTH([Date])<7,3,if(MONTH([Date])<10,4,1))),
    "年度四半期_0Q", if(MONTH([Date])<4,"2Q",if(MONTH([Date])<7,"3Q",if(MONTH([Date])<10,"4Q","1Q"))),
    "FY_0Q", "FY" & RIGHT(VALUE(if(MONTH([Date])>9,YEAR([Date]),YEAR([Date])-1)),2) & RIGHT(VALUE(if(MONTH([Date])>9,YEAR([Date]),YEAR([Date])-1)+ 1),2) & if(MONTH([Date])<4,"2Q",if(MONTH([Date])<7,"3Q",if(MONTH([Date])<10,"4Q","1Q"))),
    "年度半期_数値", If(MONTH([Date])<4,1, IF(MONTH([DATE])<10,2,1)),
    "年度半期_0stHalf", If(MONTH([Date])<4,"1st Half", IF(MONTH([DATE])<10,"2nd Half","1st Half")),
    "週_数値", WEEKNUM ( [Date], 1 ),
    "週_第00週", FORMAT ( WEEKNUM ( [Date], 1 ), "第00週" ),
    "曜日番号月曜から_数値", WEEKDAY ( [Date], 2 ),
    "曜日_aaa", FORMAT([Date],"aaa"),
    "日と曜日", FORMAT ( [Date], "DDaaa" ),
    "相対日付",DATEDIFF(Today,[Date],DAY),
    "相対月",DATEDIFF(Today,[Date],MONTH),
    "相対年度",if(MONTH([Date])>9,YEAR([Date])-ThisFY,YEAR([Date])-1-ThisFY)
)