雑・Excel入門試論 - 脱VLOOKUPの思考 20 パワーピボット - 日付テーブル

　時系列でデータ分析を行うためには、日付テーブルを作っておく必要があります。作成方法には、

1. ワークシートに作成する
1. データモデルの管理から作成
1. Power Queryで作成する

などの方法があります。

　日付テーブルは、以下の要件を満たす必要があります。

1. 日付型の列が必要です
1. 日付列は一意の値でなければいけません
1. 日付列に空白があってはいけません
1. 日付列は全て連続した日付でなければなりません
    1. つまり、日付が欠落していたはいけません
1. 日付列は、年全体にわたっている必要があります
    1. 1月スタートなら1月から12月。4月スタートなら4月から3月
1. 日付テーブルとしてマークされていなければいけません

　このような条件を満たす日付テーブルをワークシートに作成するのは賢いやり方ではないので除外します。

今回使用するのは、以下のようなテーブルです。

<img width="800" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/864075/38a11057-a525-b58b-7b15-ecd731447e03.png"/>

# データモデルの管理から作成
　データモデルの管理で、「デザイン」タブの「日付テーブル」から「新規作成」を選ぶと、「予定表」という名前の日付テーブルが作成されます。

<img width="600" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/864075/e317d957-b37d-1cd4-0472-5949f27e254c.png"/>

<img width="600" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/864075/6eec8ebb-1b36-ef80-0d07-0d45c32a5f38.png"/>

　ただし、この日付テーブルは、データの日付が範囲を超えても連動して変わることはありません。「範囲の更新」を使って手動で変えてやることが必要になります。

<img width="600" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/864075/8ad9782f-7a05-316b-1df9-15e3f514dd2e.png"/>

　これで全て完了です。日付テーブルとしてもマーク済みです。

# Power Queryで作成する
　作り方は色々あります。

　以下のようなテーブルに対する日付テーブルの作成を行うには、まず開始日と終了日を決めます。

　からのクエリを作成して、データの一番小さな日付を元に、その年の最初の日付を取り出してStartDateとします。EndDateは、一番大きな日付を取り出して、その年の最後の日付を取り出します。

<img width="800" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/864075/edddc0b1-6250-9a7e-d304-44187a648147.gif"/>

　以下のようなコードで日付のリストを作成します。

```
= List.Dates(
    StartDate,
    Duration.Days(EndDate - StartDate) + 1,
    #duration(1,0,0,0)
)
```
<img width="800" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/864075/6b73919b-c4c6-5593-a76d-1bac2ad4b6ac.gif"/>

　その後、リストをテーブルに変換し、年、月、日の列を追加していきます。その他にも必要な項目があれば追加していきます。

 <img width="800" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/864075/0f9b1c35-31fc-131f-d49c-1cab5ab7f305.gif"/>

 Power Queryエディタを閉じ、Power Pivotのデータモデルに追加した後、日付テーブルとしてマークしておきます。

<img width="600" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/864075/fb344d6c-2ec9-6773-0a5c-229450b013c5.png"/>

　この方法で作成すると、データの日付が追加になっても更新を行えば日付テーブルがきちんと生成されます。

# コンテンツ
- [雑・Excel入門試論 - 脱VLOOKUPの思考 01 - ブック - 仕様と制限](https://qiita.com/spumoni/items/189004c01181c50a4821)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 02 - ブック - オプション](https://qiita.com/spumoni/items/75955db69cc34695de14)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 03 - ワークシート](https://qiita.com/spumoni/items/5408cae114034be528c4)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 04 - セル - 文字列型](https://qiita.com/spumoni/items/4ab1d7067418886c0582)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 05 - セル - 数値データ](https://qiita.com/spumoni/items/970b4b39a5a2185992ed)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 06 - セル - 日時データ](https://qiita.com/spumoni/items/9f270e181fbc45503759)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 07 -  リンクされたデータ型](https://qiita.com/spumoni/items/ed59d15753d992c3a630)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 08 - セル - 計算式・関数](https://qiita.com/spumoni/items/ae339c97627110e2134e)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 09 -  セル - 数値の書式設定](https://qiita.com/spumoni/items/1b3134d4b0284465976f)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 10 - セル - 日付と時刻の書式設定](https://qiita.com/spumoni/items/6eb602f69956a5e1502f)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 11 - セル - 条件付き書式](https://qiita.com/spumoni/items/04bd8e24284daef6f27a)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 12 - テーブル - テーブルの作成と入力規則](https://qiita.com/spumoni/items/f23beca01c5093c81c47)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 13 - テーブル - ソートとスライサー](https://qiita.com/spumoni/items/b66027008c2f9edb853f)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 14 - テーブル - 動的配列関数](https://qiita.com/spumoni/items/cc03e898f02b8c3017f7)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 15 - Power Query - エクセルのデータを読み込む](https://qiita.com/spumoni/items/fc38a4ae595b64af87f5)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 16 - Power Query - 変換](https://qiita.com/spumoni/items/100e0e3c6a5a59b03229)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 17 - Power Query - テーブルの結合](https://qiita.com/spumoni/items/debb9ea9b8692ca8fc8c)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 18 パワーピボット - データモデル](https://qiita.com/spumoni/items/08458978e86dc59f18ed)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 19 パワーピボット - 操作](https://qiita.com/spumoni/items/e7b3f245e87622e9bc79)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 20 パワーピボット - 日付テーブル](https://qiita.com/spumoni/items/340e0fcbc9cd10198112)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 21 DAX - コンテキストとイテレーター](https://qiita.com/spumoni/items/cddc7fa16341e20bafb8)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 22 DAX - CALCULATE](https://qiita.com/spumoni/items/e2218fece1ec01e177b0)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 23 DAX - タイムインテリジェンス](https://qiita.com/spumoni/items/6d8aeb9f80ecafb69c5a)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 24 - ダッシュボード - ピボットグラフ（Pivot Chart）](https://qiita.com/spumoni/items/ffb0d57a6272c2e5ad37)
- [雑・Excel入門試論 - 脱VLOOKUPの思考 25 - ダッシュボードの作成](https://qiita.com/spumoni/items/5e57ad587a343857e543)