( New ) 新連載スタート!2人の会話形式でPythonを学ぶ「週末Pythonゆる講座」はこちら ▶▶

【エクセル】DATE関数|日付を関数で設定する方法

DATE関数とは?

「DATE関数」とは「日付を関数で作り出す」ことができる関数です

そのまま日付を入力すればよいのでは!?

と思いますよね…

しかしデータによっては「年」「月」「日」が別々になっている場合があります

上の例では、生年月日がそれぞれ別々の「数値データ」となっています

このようなときに「DATE関数」を使う必要が出てきます

DATE関数の使い方

関数自体はとてもシンプルです

()カッコの中に日付型にしたい年・月・日を入れるだけ

もちろん、手動で直接記入することもできます

ただ、これではかなり手間になってしまいますよね…

セルを指定することで、直接記入することなくコピーすることができます

単純に足し算ではダメ!?

上記の例では「年」「月」「日」がそれぞれ「数値」として存在しているため

足し算しても「2002 + 6 + 1 = 2009」となってしまいます

日付型にしたい(2002/6/1)場合は、「DATE関数」による処理が必要です

覚えておきたい使い方

この「DATE関数」が効果を発揮するのはこのパターンです

日付型ではない日付を、日付型に変更する

何を言っているの?」と思われるかもしれません…

エクセルには「データの形」がいろいろあります

「2020年1月31日」を表現した日付を3つ並べていますが

それぞれデータ型が違います

まずは日付数値に「+1日」をしてみましょう

日付:2020/1/31 [+1] = 2020/2/1

数値:20200131 [+1] = 20200132

日付」の方は意図を理解して「2/1」としてくれましたが

数値」の方は「20200132(1/32)」と存在しない日付になってしまいます

※数値としての2千20万132という数値になります

このようなとき、「DATE関数」を使って、下記のような変換をしましょう

日付型ではない日付を、日付型に変更する

エクセルは賢いから、文字も日付と認識する!?

エクセルで文字列の「2020年1月31日」を入力すると

自動的に日付として認識してくれます

裏側でシリアル値を自動に計算して、表示形式を「yyyy”年”m”月”d”日”」にしてくれます

RIGHT/MID/LEFT関数を使いこなす

それでは「日付型ではない日付」を「DATE関数」で日付にしていきましょう

ポイントとなってくるのは「どうやって年月日を抽出するか?」です

その答えは「LEFT関数」「MID関数」「RIGHT関数」です

知らない方はこちらの記事で使い方をご覧ください

【エクセル】RIGHT/LEFT関数|右-左から文字を取り出す関数 【エクセル】MID関数|文字列の途中を抽出する

それでは年月日が全て結合している「数値型」の日付に対し

①関数を組み合わせて抽出して

②日付型に変換していきます

メインの「DATE関数」の中に3つの関数を埋め込みます

  1. LEFT関数」で左から4文字取る
  2. MID関数」で真ん中の2文字を取る
  3. RIGHT関数」で右から2文字を取る

数値の形が違っても、指定の文字数を変えるだけで柔軟に対応することができます

まとめ

「DATE関数」は「日付型ではない日付を、日付型に変更する

便利な関数でした

他の関数とうまく組み合わせて、日付を作り出してみてください

コメントを残す

メールアドレスが公開されることはありません。