Power BIで「日付」を使ったグラフを作成するとき、英語表記になってしまいます。また、日付データは1月〜12月で集計されてしまうといったデメリットがあります。
そのデメリット、「日付テーブル」をつくり、会計年度で表示することで解決することができます。
Power BIの弱点
Power BIではいろんな角度からのグラフをサッとつくることができます。
ツールの内容、ダウンロードはこちらの記事から。
Power BI入門 データをグラフでサクッと分析するツール。 – GO for IT 〜 税理士 植村 豪 Official Blog
ただ、Power BIならではのデメリットもあります。
たとえば、
- 月が英語表示
- 暦年でのデータ管理
といったこと。
例えば、「1月」「2月」「3月」としたいのに「January」「February」「March」と表示されます。
外資系の会社ならそのままでも問題ないでしょうが、通常は「January」より「1月」のほうが見やすいでしょう。
さらに、フリーランスや12月決算の会社なら、1月から12月までという期間でいいのですが、会社の場合は決算月を基準に表示させたいわけです。
アメリカをベースとしたPower BIだからでしょうが、これはちとイタイ…。
ただ、Power BIならではの使いやすさもあり、
会社の決算にあった表示にさせたい、というのが今回のはなしです。
Power BIに日付テーブルをつくることで、決算月をもとにした会計年度にあった表示にすることができます。
決算月に対応するための準備
前述したとおり、Power BIの日付のデータ型の設定は、「1月〜12月」ですし、日付も英語です。
では、3月決算の会社を前提として「4月〜3月」という表示にしたい場合、どうすればいいか?
これを4月からはじまり、3月で終わるという日付情報のテーブルをつくっておき、集計したいデータとリンクさせるわけです。
日付テーブルをつくる
日付テーブルをつくっておくことで
- 日付の英語表記を日本での日付に変換できる
- 会計年度(3月決算など)に設定できる
といったことができます。
次のようにつくります。
左端のアイコンをグラフからデータ画面に切り替え、リボンにある「新しいテーブル」をクリックし、
関数 CALENDARAUTO(カレンダーオート)を使います。
テーブル名(ここでは名前「テーブル」)= が表示されたら「ca…」と入力すると、候補の関数が表示されます。これはマクロと同じようなしくみです。
次に「会計期間の決算月を入れてちょ」という表示がでるので、ここでは3月決算の「3」を入れてみましょう。(5月決算なら「5」です)
すると、1行目に4月からのデータが表示されます。
時間はいらないので、データ型を「日付」に
書式はお好みで変えることもできます。
このテーブルに1列ずつデータを追加して、日付テーブルを完成させるわけです。
新しい列を追加するを選び、
1行目に”年”=year([Date])とすると、
見出し「年」とそのデータ列が表示されます。
ただ、これを1つずつやっているのはタイヘンなので、関数でまとめましょう。
テーブルがまっさらの状態で、数式窓に下の関数をコピペします。
項目ごとに使うデータをまとめたものです。(使いそうなものだけをいくつか。)
決算月が変わると、年度、四半期などの式は少し変わりますが、基本の考えは同じです。
1 2 3 4 5 6 7 8 9 10 |
Date = ADDCOLUMNS ( CALENDARAUTO(3), "年度",IF(QUARTER([Date])=1,YEAR([Date])-1,YEAR([Date])), "月数", FORMAT( [Date], "M"), "月", FORMAT ( [Date], "M"&"月"), "年/月",FORMAT ( [Date], "YYYY/M" ), "四半期",IF(MONTH([Date])<4,"4Q",IF(MONTH([Date])<7,"1Q",IF(MONTH([Date])<10,"2Q","3Q"))), "曜日", 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","金"))))))) ) |
Enterを押すと、このような日付テーブルができます。
拡大するとこんな感じです。
「Date」を昇順にすると4月からで並び替えされます。
日付テーブルはこれで終わりです。
シートごとに日付テーブルが必要ですが、初回に上記の関数をコピペすれば、それ以後はファイル保存でテーブルは残りますから、それほど手間はかかりません。
リレーションを忘れずに
日付テーブルをつくったらデータに項目ができているのですが、実はこれでは機能しません。
リレーション(関係づけ)が必要です。
- 集計したいもとデータの日付
- 日付テーブルの日付
の2つをつなげるわけです。
左のアイコンから「モデル」を選び、
販売データの「販売日」の項目を「Date」にドラッグ+ドロップすると、線でつながったのがわかります。
線上をクリックすると、内容を確認できます。「1:1」→「*:1」にしておきましょう。
あとは、グラフを選びX軸には、もとデータの販売日ではなく、今回追加でつくった日付データの項目を入れます。リレーションシップでつなげていれば、正しく表示されるはずです。
四半期を入れないと、どうにも順番に表示されないので、四半期を入れています。
と、このようなグラフをつくることができます。X軸の表示形式はお好みの項目で。
階層を上げれば、「四半期」→「年」といったグラフに変えることもできます。
その階層を設定することができます。
階層をつくる
階層をつくらなくてもX軸に上から順番に「年度」→「四半期」→「月」とドラッグすることでデータ表示はできますが、フィールドの年度を階層にまとめることもできます。
年度を一番上にするなら、年度の右側「…」をクリックして、階層の作成を。
するとこのように階層ができます。
次に「四半期」「月」を順番に
階層に追加していきます。
と、このような階層にすることができます。
階層にすれば、階層ごとX軸にドロップしてドリルダウンで階層を下げることもできます。
ということで参考にしていただければ。
【編集後記】
昨日はオフ。朝、長男(7)と散歩を。その道中に前日のサッカーの試合の話を教えてくれました。どうやってゴールを決めたか、〇〇くんからパスが来たなど、楽しそうに話してたので聞くこと、質問することに徹しました。本人気づかずに3kmをブーブー言わずに歩いてくれました。
【昨日の1日1新】
※「1日1新」→詳細はコチラ
Power BI リレーションシップ