Excelの日付と時刻関数 DATEVALUE/TIMEVALUEの詳細解説
はじめに
Excelでは、日付や時刻を扱う際にとても便利な関数が多数用意されています。
中でも、DATEVALUE
とTIMEVALUE
関数は、テキスト形式の日付・時刻をExcelが認識できる数値(シリアル値)に変換するために使われます。
この解説では、初心者の方にも理解しやすいように、各関数の基本的な使い方や実例、また注意すべき点について詳しく説明していきます。
Excelのシリアル値を理解することで、日付や時刻を計算に利用したり、複雑なデータ処理を行うことが可能になります。
DATEVALUE関数の基本
DATEVALUE
関数は、文字列で入力された日付をExcelが扱える日付のシリアル値に変換します。
これにより、日付の加減算や比較が容易になります。
基本的な構文は以下の通りです:
DATEVALUE(date_text)
引数date_text
には、日付を示す文字列を入力します。たとえば、以下のように使用します:
=DATEVALUE("2025/02/18")
この例では、「2025/02/18」という文字列が、Excel内部で使用される日付のシリアル値に変換されます。
※ Excelの地域設定により、日付の入力形式(例:”MM/DD/YYYY” や “YYYY/MM/DD”)が異なる場合があります。
例1:
セルA1に「2025/03/15」と入力されている場合、セルB1に以下の数式を入力します:
=DATEVALUE(A1)
これにより、セルB1には「2025/03/15」に対応するシリアル値(内部的な数値)が表示されます。
TIMEVALUE関数の基本
TIMEVALUE
関数は、文字列で表された時刻をExcelの時刻形式に変換します。
Excelでは、1日が1として扱われ、1時間は1/24、1分は1/1440のように計算されます。
基本的な構文は以下の通りです:
TIMEVALUE(time_text)
引数time_text
には、時刻を示す文字列を入力します。例えば:
=TIMEVALUE("15:30:00")
この例では、「15:30:00」という文字列が時刻のシリアル値に変換されます。結果として、15時30分は1日のうちの一部として小数で表されます。
例2:
セルA2に「08:45 AM」と入力されている場合、セルB2に以下の数式を入力します:
=TIMEVALUE(A2)
この数式により、セルB2には「08:45 AM」に対応するシリアル値(例:0.36458333など)が表示されます。
文字列から日付・時刻への変換例
DATEVALUE
とTIMEVALUE
は、単独で使用するだけでなく、組み合わせて日付と時刻を同時に変換することも可能です。
例えば、「2025/02/18 15:30:00」という文字列から、日付部分と時刻部分をそれぞれ抽出して変換する方法は以下の通りです。
例3:
文字列「2025/02/18 15:30:00」から日付と時刻を変換する数式:
=DATEVALUE(LEFT("2025/02/18 15:30:00", 10)) + TIMEVALUE(MID("2025/02/18 15:30:00", 12, 8))
この数式では、LEFT
関数で最初の10文字(日付部分)を抽出し、DATEVALUE
で変換しています。
同様に、MID
関数で11文字目以降の8文字(時刻部分)を抽出し、TIMEVALUE
で変換しています。
例4:
セルA3に「2025-02-18 08:00:00」と入力されている場合、以下のように入力します:
=DATEVALUE(LEFT(A3,10)) + TIMEVALUE(MID(A3,12,8))
この方法で、セルA3の文字列をExcelで正しく認識できる日付・時刻の形式に変換できます。
また、データ形式が異なる場合は、TEXT
関数やCONCATENATE
関数を組み合わせることで、
より柔軟な変換が可能になります。
例5:
日付が「18-02-2025」、時刻が「3:30 PM」と個別に入力されている場合、日付を「YYYY/MM/DD」形式に変換してから計算する方法:
=DATEVALUE(MID("18-02-2025",7,4) & "/" & MID("18-02-2025",4,2) & "/" & LEFT("18-02-2025",2)) + TIMEVALUE("15:30:00")
この例では、文字列操作関数を使用して日付部分を整形し、DATEVALUE
で変換しています。
注意点とヒント
DATEVALUE
やTIMEVALUE
関数を使用する際には、いくつかの重要な注意点があります。
- 地域設定の影響: Excelはシステムの地域設定に基づいて日付や時刻の形式を解釈するため、設定が異なると正しく変換できない場合があります。
-
入力形式の正確性:
入力する文字列はExcelが認識可能な形式である必要があります。
形式が異なると、
#VALUE!
エラーが返されることがあります。 - エラー処理: 変換に失敗した場合は、エラーが発生します。エラーが出た場合は、入力文字列の形式や関数の引数を確認しましょう。
-
関数の組み合わせ:
複雑なデータ形式の場合、他の文字列操作関数(例:
LEFT
,MID
,RIGHT
)と組み合わせることで、より柔軟に対応できます。 - セルの表示形式: 変換後のシリアル値は、セルの表示形式を変更することで、日付や時刻として見やすく表示させることができます。
これらのヒントを参考に、実際にExcelで試行錯誤しながら関数の使い方をマスターしてください。
練習問題と例題
ここでは、実際にExcel上でDATEVALUE
およびTIMEVALUE
関数を使ってみるための練習問題と例題を紹介します。
自分で数式を入力して動作を確認してみましょう。
問題1:
セルA1に「07/04/2025」という文字列が入力されています。この日付をシリアル値に変換する数式は何でしょうか?
=DATEVALUE(A1)
問題2:
セルA2に「9:15 PM」と入力されています。この時刻をExcelの時刻シリアル値に変換するには、どの数式を使用しますか?
=TIMEVALUE(A2)
問題3:
セルA3に「2025/12/31 23:59:59」と入力されています。日付と時刻を分解して、それぞれ正しいシリアル値に変換する数式を考えてみましょう。
=DATEVALUE(LEFT(A3,10)) + TIMEVALUE(MID(A3,12,8))
例題:
セルA4に「31-12-2025 11:59:59 PM」と入力されている場合、日付部分を整形してから変換する数式を作成してください。
=DATEVALUE(MID(A4,7,4) & "/" & MID(A4,4,2) & "/" & LEFT(A4,2)) + TIMEVALUE(MID(A4,12,11))
これらの問題を通じて、実際に関数の動作を確認しながら理解を深めることができます。
まとめ
ExcelのDATEVALUE
およびTIMEVALUE
関数は、文字列形式の日付や時刻をシリアル値に変換するための非常に有用なツールです。
これにより、日付や時刻を利用した計算やデータ解析が容易になります。
本記事では、各関数の基本的な使い方、具体的な例、また注意すべき点やヒントを詳しく解説しました。
初心者の方でも、ここで紹介した例題や練習問題を試すことで、Excelでの日付と時刻の取り扱いに慣れることができるでしょう。
ぜひ実際にExcelを開いて、各関数を使った数式を入力し、動作を確認してみてください。 理解が深まると、より複雑なデータ処理や分析にも挑戦できるようになります。
Excelの力を活用し、効率的なデータ管理と分析を目指しましょう!