異なる形式の日付を統一するには? DATEVALUEとTEXTを組み合わせたデータ整理のテクニック | EXCELトピックス

スポンサーリンク
スポンサーリンク

異なる形式の日付を統一するには?

Excelでは、データの入力方法によって日付の形式がバラバラになることがあります。たとえば、「2024/02/10」「2024-02-10」「10-Feb-2024」など異なるフォーマットが混在すると、並び替えや計算が正しく行えません。

このような場合、DATEVALUE関数とTEXT関数を組み合わせることで、日付の形式を統一できます。

DATEVALUE関数とは?

DATEVALUE関数は、日付を文字列として入力した場合、それをExcelの日付シリアル値に変換する関数です。

基本構文

=DATEVALUE(日付文字列)

この関数を使うと、異なる表記の日付を統一することができます。

TEXT関数とは?

TEXT関数は、数値や日付を特定のフォーマットで表示する関数です。

基本構文

=TEXT(値, "表示形式")

これを使うことで、統一したフォーマットの日付を作成できます。

異なる形式の日付を統一する方法

たとえば、以下のように異なるフォーマットの日付が入力されている場合を考えます。

元のデータ

※A列は文字列として入力されています。

A B C
1 入力された日付 変換後のシリアル値 統一フォーマット
2 2024/02/10 =DATEVALUE(A2) =TEXT(DATEVALUE(A2), “yyyy-mm-dd”)
3 2024-02-10 =DATEVALUE(A3) =TEXT(DATEVALUE(A3), “yyyy-mm-dd”)
4 10-Feb-2024 =DATEVALUE(A4) =TEXT(DATEVALUE(A4), “yyyy-mm-dd”)

数式の解説

  • =DATEVALUE(A2) → 文字列の日付をシリアル値に変換
  • =TEXT(DATEVALUE(A2), "yyyy-mm-dd") → 「YYYY-MM-DD」の形式で統一

計算結果の例

A B C
1 入力された日付 変換後のシリアル値 統一フォーマット
2 2024/02/10 45334 2024-02-10
3 2024-02-10 45334 2024-02-10
4 10-Feb-2024 45334 2024-02-10

DATEVALUEが使えないケース

DATEVALUE関数は、セルの値が文字列の場合のみ機能します。すでに日付データとして認識されている場合は、直接TEXT関数を適用できます。

数式

=TEXT(A2, "yyyy-mm-dd")

使用例

A B
1 元のデータ 統一フォーマット
2 2024/2/10 =TEXT(A2, “yyyy-mm-dd”)
3 2024-2-10 =TEXT(A3, “yyyy-mm-dd”)

まとめ

異なる形式の日付を統一するには、DATEVALUETEXTを組み合わせるのが便利です。

  • 日付が文字列の場合: =TEXT(DATEVALUE(A2), "yyyy-mm-dd")
  • すでに日付データの場合: =TEXT(A2, "yyyy-mm-dd")

この方法を活用すれば、データの整理がよりスムーズに行えます。

使用した関数について

DATEVALUE関数で文字列の日付をシリアル値に変換する方法と#VALUE!エラーが発生してしまう理由をわかりやすく解説
DATEVALUE関数についてDATEVALUEの概要文字列の日付をシリアル値に変換 Excel関数 =DATEVALUE(文字列の日付) 概要 DATEVALUE関数は文字列として入力された日付をExcelで認識するシリアル値に変換します。 日付を計算や並べ替えに利用可能な形式に変換できます。 参照セルが日付形式の場...
TEXT関数で日付などの数値を文字形式に変換する方法と曜日や和暦、分数などの表示方法についてわかりやすく解説
TEXT関数についてTEXTの概要セル内の指定文字の位置を求めるExcel関数=TEXT( 値 , 表示形式 )概要 値を指定した形式の文字で表示する この関数によって数値データは文字データに変換される 日付データであるシリアル値などが対象となる YEARやMONTHなどでも同様の結果を表示をすることができるが、TEX...