- エクセルで日付を扱う関数にはどんなものがあるのだろう?
- 時刻についても扱うことができるのか知りたい!
そんな思いにお応えできるようこの記事では、
- 日付・時刻を扱う関数で出てくる「シリアル値」について
- 日付・時刻を扱うためのエクセル関数
について解説しています。
シリアル値ときくと少し難しいイメージがありますが、完全に理解できなくても実際に関数を使うのはとても簡単なのでまずは使ってみましょう!
エクセル関数については下記にまとめ記事がありますので、こちらもご参考下さい。
シリアル値とは?
日付を扱うエクセル関数の前に、是非知っておいて頂きたいのがシリアル値についてです。
日付に関するシリアル値
エクセルで「2013/4/6」と入力するとその通りに表示されます。
しかし、選択すると形式が「標準」ではなく「日付」になっていることが分かります。
これは「2013/4/6」という形式からエクセルが自動的に日付と判断してくれているためです。「標準」に変えてみるとどうなるでしょうか。
「標準」に変えると「2013/4/6」が「41370」という数値に変わってしまいました。この数値がシリアル値です。
エクセルでの日付は、1900年1月1日を1として考えます。
エクセル内部ではこのような形で、日付をシリアル値として認識しているため日付に足し算をしたり日付同士を計算したりすることができます。
時間に関するシリアル値
時間については、24時を1というシリアル値で認識しています。
セルに「24:00」と入力すると時間と認識され表示形式が自動的に「ユーザー定義」に変わりますが、「標準」に変更すると1という表示に変わります。
関数を使う上でシリアル値という言葉が出てきますので、先に解説致しました。
エクセルでの表示形式が「日付」や「ユーザ定義」の場合シリアル値は日付や時間に変換された形で表示されますのでシリアル値を扱うこと自体は少ないかもしれませんが、関数を使う上では考え方だけでもできるだけ理解しておくようにしましょう。
それでは日付を扱うエクセル関数を紹介していきます。
日付・時間を扱うエクセル関数
全てではありませんが、実務ですぐに使えるものを中心として日付・時間を扱うエクセル関数を一覧にしました。
使用例を参考に、是非まずは使ってみてください。
関数名 | 機能 | 数式の型 | 使用例 | 備考 |
DATE関数 | シリアル値を返してくれる | =DATE(年,月,日) | =DATE(1900,1,1) | |
DAY関数 | 値に含まれる「日付」データを返してくれる | =DAY(シリアル値) | =DAY("2020/5/13") | 実用上「シリアル値」の部分は日付表現でもOK(エクセルが変換してくれるため) |
DAYS関数 | 引数で指定した日付の間の日数を返してくれる | =DAYS(終了日,開始日) | =DAYS("2019/3/4","2018/5/5") | |
MONTH関数 | 値に含まれる「月」データを返してくれる | =MONTH(シリアル値) | =MONTH("2020/5/13") | 実用上「シリアル値」の部分は日付表現でもOK(エクセルが変換してくれるため) |
SECOND関数 | 値に含まれる「秒」データを返してくれる | =SECOND(シリアル値) | =SECOND("18:33:21") | 実用上「シリアル値」の部分は時刻表現でもOK(エクセルが変換してくれるため) |
MINUTE関数 | 値に含まれる「分」データを返してくれる | =MINUTE(シリアル値) | =MINUTE("18:33:21") | 実用上「シリアル値」の部分は時刻表現でもOK(エクセルが変換してくれるため) |
HOUR関数 | 値に含まれる「時間」データを返してくれる | =HOUR(シリアル値) | =HOUR("18:33:21") | 実用上「シリアル値」の部分は時刻表現でもOK(エクセルが変換してくれるため) |
NOW関数 | 現在の日付・時刻を返してくれる | =NOW() | =NOW() | 引数は不要 |
TODAY関数 | 現在の日付を返してくれる | =TODAY() | =TODAY() | 引数は不要 |