• 公開日:
  • 更新日:

Excelで日付を文字列に変換するTEXT関数の使い方

この記事では、Excelで日付を文字列に変換するTEXT関数の使い方をご紹介します。

TEXT関数を使って日付を文字列に変換することができると、表示形式を指定してデータを入力し直す手間を省くことができます。

またTEXT関数は、日付形式を指定することができます。「2023/9/25」を「2023年9月25日」など別の形式の文字列に変換したい場合もご活用ください。

Excelで日付を文字列に変換するTEXT関数の使い方

TEXT関数は表示形式が「日付」や「数値」などの形式で入力されたデータを「文字列」に変換することができる関数です。

今回はTEXT関数を使って、日付の表示形式で入力されたデータを文字列に変換する方法をご紹介します。

TEXT関数を入力する

上記画像B4セルに日付の表示形式で入力されている「2023/9/25」を文字列に変換します。

D4セルに「=TEXT(B4,"yyyy/m/dd")」を入力し、Enterを押します。

TEXT関数の書式は、「=TEXT(値,表示形式)」です。

値には、文字列に変換したい日付のセル(B4)を指定します。そして、表示形式には「"」で囲った「yyyy/m/dd」を入力することによって「2023/9/25」と表示させることができます。

表示形式を指定する際に「mm/dd」を入力すると、二桁の月日(9/1→09/01)に変更して表示されます。

日付が文字列に変換された

D4セルに入力したTEXT関数が「2023/9/25」に変換されました。

配置などの設定を行っていなければ、文字列のデータは左詰め、表示形式が日付のデータは右詰めで、それぞれセルに表示されます。

そのため、分かりづらいですがD4セルの「2023/9/25」は、文字列ということになります。

表示形式が日付のデータを文字列に変換することができました。

またISNUMBER関数を使って、入力されている日付が文字列かどうかを確認することもできます。

詳しい方法は以下の記事「文字列の日付を判定する方法」セクションでご紹介しています。

Excelで日付かどうか判定する方法

TEXT関数を使って様々な形式で日付を文字列に変換する

TEXT関数の表示形式を工夫することによって、日付データを様々な形式に変更した上で、文字列に変換する方法をご紹介します。

日付を「yyyy年m月dd日」形式の文字列に変換する

「yyyy/m/dd」形式の日付を「yyyy年m月dd日」形式の文字列に変換する方法をご紹介します。

表示形式に「yyyy年m月dd日」を指定してTEXT関数を入力する

今回は、上記画像のB4セルに日付の表示形式で入力されている「2023/9/25」を「2023年9月25日」という文字列に変換します。

D4セルに「=TEXT(B4,"yyyy年m月dd日")」を入力し、Enterを押します。

TEXT関数の書式は、「=TEXT(値,表示形式)」です。

値には、文字列に変換したい日付のセル(B4)を指定します。そして、表示形式には「"」で囲った「yyyy年m月dd日」を入力することによって「2023年9月25日」と表示させることができます。

表示形式を指定する際に「年月日」の部分を他の記号に変更することで、日付の形式を変更できます。

例えば「=TEXT(B4,"yyyy-m-dd")」を入力すると、「2023-9-25」が表示されます。

「yyyy年m月dd日」形式の文字列に変換された

D4セルに入力したTEXT関数が文字列の「2023年9月25日」に変換されました。

日付を「yyyy年m月dd日」形式の文字列に変換することができました。

和暦の文字列に変換する

和暦の文字列に変換された

上記画像D4セルのように、日付を和暦(令和〇年)に変更して文字列に変換することができます。

TEXT関数で表示形式を指定するだけで、計算する手間を省いて自動で和暦に換算されるため、「大量の日付を和暦に変更したい」場合などに役立ちます。

詳しい方法については、以下の記事「TEXT関数」セクションでご紹介しています。

エクセルで日付を令和(和暦)にする方法

日付に曜日を追加して文字列に変換する

日付のみのデータに曜日も追加して、文字列に変換する方法をご紹介します。

表示形式に「aaaa」を挿入して文字列の日付に変換する

今回は、上記画像のB4セルに日付の表示形式で入力されている「2023/9/25」を「2023/9/25(月曜日)」という文字列に変換します。

D4セルに「=TEXT(B4,"yyyy/m/dd(aaaa)")」を入力し、Enterを押します。

TEXT関数の書式は、「=TEXT(値,表示形式)」です。値には、文字列に変換したい日付のセル(B4)を指定します。

そして、表示形式には「"」で囲った「yyyy/m/dd(aaaa)」を入力することによって「2023年9月25日(月曜日)」と、日付に対応する曜日も自動で表示させることができます。

表示形式を指定する際に、「(aaa)」と「a」の数を3つで入力すると、曜日の頭文字のみ(月、火、水…)表示します。

曜日を含む文字列の日付に変換された

D4セルに入力したTEXT関数が文字列の「2023/9/25(月曜日)」に変換されました。

日付に曜日を追加した上で、文字列に変換することができました。

日付を英語表記の「月/曜日」形式の文字列に変換する

日付を英語表記の「月/曜日」形式の文字列に変換する方法をご紹介します。

表示形式に「mmmm/dddd」を指定してTEXT関数を入力する

今回は、上記画像のB4セルに日付の表示形式で入力されている「2023/9/25」を「September/Monday」という文字列に変換します。

D4セルに「=TEXT(B4,"mmmm/dddd")」を入力し、Enterを押します。

TEXT関数の書式は、「=TEXT(値,表示形式)」です。値には、文字列に変換したい日付のセル(B4)を指定します。

そして、表示形式には「"」で囲った「mmmm/dddd」を入力することによって「September/Monday」と、日付に対応する英語表記の「月と曜日」を表示されることができます。

表示形式を指定する際に、「mmm/ddd」とそれぞれ3つずつ「m」「d」を入力すると、省略された月と曜日(Sep/Mon)を表示します。

日付が英語の「月/曜日」に変換された

D4セルに入力したTEXT関数が文字列の「September/Monday」に変換されました。

日付を英語で表記された「月/曜日」形式の文字列に変換することができました。

TEXT関数を使って日付と文字列を結合する方法

表示形式が「日付」のデータを変換せずに、「文字列」と結合しようとするとうまく機能しません。

試しに、以下で表示形式が日付のデータをそのまま文字列と結合してみます。

文字列の文章に日付を結合する

上記画像B4セルの「2023/9/25」を使って、「バスケットボール大会の開催日は2023/9/25です。」という文章を作成します。

D4セルに「="バスケットボール大会の開催日は"&B4&"です。"」を入力し、Enterを押します。

結合した日付がシリアル値になってしまった

D4セルに作成した文章が表示されました。しかし、「2023/9/25」の部分が「45194」というシリアル値に置き換わっています。

このように、日付の表示形式のデータをそのまま文字列と結合させると、日付がシリアル値に変更されてしまいます。

そのため、TEXT関数を使って日付を文字列に変換した上で、データ同士を結合させることが必要になります。

以下でご説明する方法を参考に、日付と文字列を結合させましょう。

TEXT関数で日付を参照して文字列の文章と結合する

D4セルに「="バスケットボール大会の開催日は"&TEXT(B4,"yyyy/m/dd")&"です。"」を入力し、Enterを押します。

TEXT関数の書式は「=TEXT(値,表示形式)」です。値で日付のセルを参照し、表示形式は入力されている日付の形式と同じものを指定します。

日付が正しく文字列に結合された

日付がシリアル値に変換されることなく、D4セルに正しい文章が表示されました。

日付と文字列を正常に結合することができました。