Excel TEXT関数で日付の書式を自由自在に!データ活用の幅を広げる時短テクニック
Excelでのデータ集計やレポート作成において、日付の書式がバラバラで困った経験はありませんか?ExcelのTEXT関数を使えば、日付データの書式を思い通りに変換できます。これにより、レポート作成やデータ集計時の手間を大幅に削減し、あなたの業務を劇的に効率化できるでしょう。
この関数をマスターすれば、日付データを統一された形式で出力したり、特定の情報だけを抽出したりすることが可能になり、データ活用の幅が大きく広がります。今回は、TEXT関数の日付書式変換に焦点を当て、その基本から実務での応用までを詳しく解説します。
TEXT関数とは?日付書式変換の基本
TEXT関数は、数値や日付、時刻などのデータを、指定した書式(フォーマット)の「文字列」に変換する関数です。セルの表示形式を変更するだけでは、データそのものは数値のままでしたが、TEXT関数を使うと、指定した表示形式で文字列としてデータが出力されます。
例えば、日付「2023/1/5」を「2023年1月5日」という文字列に変換したい場合などに非常に有効です。
TEXT関数の基本的な構文
=TEXT(値, 書式文字列)
- 値: 変換したい元のデータ(日付が入っているセル参照や直接入力した日付など)。
- 書式文字列: どのような形式に変換したいかを指定するコード(例: “yyyy/mm/dd”)。この書式文字列は必ず二重引用符(” “)で囲みます。
日付の書式設定コードを理解する
TEXT関数で日付を思い通りに変換するには、「書式文字列」に指定するコードを理解することが重要です。ここでは、よく使う日付の書式コードをご紹介します。
- 年を表すコード
yyyy:年を4桁で表示します(例: 2023)yy:年を2桁で表示します(例: 23)
- 月を表すコード
m:月を1桁または2桁で表示します(例: 1, 12)mm:月を2桁で表示します(例: 01, 12)mmm:月を英語の略称で表示します(例: Jan, Dec)mmmm:月を英語のフルネームで表示します(例: January, December)
- 日を表すコード
d:日を1桁または2桁で表示します(例: 5, 25)dd:日を2桁で表示します(例: 05, 25)
- 曜日を表すコード
ddd:曜日を漢字1文字で表示します(例: 水)dddd:曜日を漢字でフルネームで表示します(例: 水曜日)aaa:曜日を英語の略称で表示します(例: Wed)aaaa:曜日を英語のフルネームで表示します(例: Wednesday)
- 和暦を表すコード(応用)
gg:元号の頭文字を表示します(例: 令)ge:元号の頭文字と年数を表示します(例: 令5)ggyy:元号の頭文字と年数を2桁で表示します(例: 令05)[$-ja-JP]ge:元号と年数を表示します(例: 令和5)
TEXT関数を使った日付書式変換の手順と具体例
それでは、具体的な手順を見ていきましょう。ここでは、セルA1に「2023/1/5」という日付が入力されていると仮定します。
例1:日付を「YYYY年M月D日」形式に変換する
- 変換したい日付データが入力されたセルを選択します。
(例: A1セルに「2023/1/5」と入力されています) - 結果を表示したいセルを選択し、数式を入力します。
(例: B1セルに=TEXT(A1, "yyyy年m月d日")と入力します) - Enterキーを押すと、変換された日付が文字列として表示されます。
(B1セルに「2023年1月5日」と表示されます)
例2:日付から「曜日」だけを抽出する
- 変換したい日付データが入力されたセルを選択します。
(例: A1セルに「2023/1/5」と入力されています) - 結果を表示したいセルを選択し、数式を入力します。
(例: C1セルに=TEXT(A1, "dddd")と入力します) - Enterキーを押すと、曜日が文字列として表示されます。
(C1セルに「木曜日」と表示されます)
実務で役立つ!TEXT関数の数式例
ここでは、実務でよく遭遇するシーンでのTEXT関数の活用例をご紹介します。仮に、セルA2に「2024/07/15」という日付が入力されているとします。
1. レポート用に見やすい「YYYY年M月D日(曜日)」形式に変換
売上レポートや会議資料で日付を分かりやすく表示したい場合に最適です。
=TEXT(A2, "yyyy年m月d日(ddd)")
→ 結果:「2024年7月15日(月)」
2. 顧客管理で誕生日を「MM/DD」形式に統一
顧客リストの誕生日を年に関わらず月日だけで表示し、記念日通知などに活用します。
=TEXT(A2, "mm/dd")
→ 結果:「07/15」
3. ファイル名やコードの一部として「YYMMDD」形式で出力
データのバックアップ名や、一意のIDの一部として日付を使いたい場合に便利です。
=TEXT(A2, "yymmdd")
→ 結果:「240715」
4. 週次レポートで「〇〇週目」と表示するために曜日を付加
レポートの開始日と終了日を明確に示したい場合など。
="週次レポート "&TEXT(A2, "yyyy/mm/dd")&" 開始"
→ 結果:「週次レポート 2024/07/15 開始」(日付は開始日として)
5. 和暦で表示(例:R5年1月1日)
公文書作成や特定の業界で和暦が必要な場合に使用します。
=TEXT(A2, "[$-ja-JP]ggge年m月d日")
→ 結果:「令和6年7月15日」
注意点・補足:TEXT関数利用時の落とし穴
TEXT関数の結果は「文字列」になる
最も重要な注意点ですが、TEXT関数の結果は見た目が日付であっても「文字列」になります。そのため、TEXT関数で変換されたデータに対して直接日付計算(例:〇日後、〇日前)を行うことはできません。計算が必要な場合は、TEXT関数を使う前の元の数値形式の日付データを使用するか、別途DATEVALUE関数などで数値に再変換する必要があります。
例えば、「2023年1月1日」と表示されたセルにTEXT関数が使われている場合、そのままでは「+7」と入力しても1週間後の日付にはなりません。あくまで表示形式を整えるための関数だと認識しておきましょう。
書式コードのタイプミスに注意
書式コードのmとmm、dとdd、dddとddddのように、文字数の違いで表示形式が変わります。意図しない形式になっていないか、数式を入力した後は必ず確認しましょう。
m:月を1桁または2桁(1, 12)mm:月を2桁(01, 12)d:日を1桁または2桁(1, 12)dd:日を2桁(01, 12)ddd:曜日を漢字1文字(月)dddd:曜日を漢字フルネーム(月曜日)
よくある質問(FAQ)
Q1: TEXT関数を使わずに、セルの書式設定で日付の表示を変えるのと何が違うのですか?
A1: セルの書式設定は、あくまでセルの「見た目」を変えるだけで、セルの「中身(値)」は数値のままです。例えば、2023年1月1日が入力されたセルを「日付」形式で「2023/01/01」と表示させても、内部の数値は「44927」(Excelの日付シリアル値)のままです。
一方、TEXT関数は、日付のシリアル値を指定した書式(例:「2023年1月1日」)の「文字列」に変換します。変換後のデータは文字列として扱われるため、他の文字列と連結したり、特定のシステムへの出力形式として利用したりする際に非常に便利です。ただし、前述の通り、文字列であるためそのまま計算に使うことはできません。
Q2: 日付だけでなく、時刻もTEXT関数で書式変換できますか?
A2: はい、時刻もTEXT関数で書式変換が可能です。時刻の書式コードを使います。
h:時間を1桁または2桁(例: 5, 17)hh:時間を2桁(例: 05, 17)m:分を1桁または2桁(例: 5, 30)mm:分を2桁(例: 05, 30)s:秒を1桁または2桁(例: 5, 30)ss:秒を2桁(例: 05, 30)AM/PM:午前/午後を表示(例: AM 5:00)
例えば、セルA3に「2023/1/5 14:35:00」という日付と時刻が入力されている場合、=TEXT(A3, "hh時mm分")と入力すると「14時35分」と表示されます。
まとめ
- Excel TEXT関数は、日付データを指定した書式の「文字列」に変換する強力な機能です。
- 「yyyy」「mm」「dd」「ddd」「dddd」などの書式コードを使いこなすことで、多様な表示形式に対応できます。
- TEXT関数の結果は文字列になるため、計算には使えない点に注意し、用途に応じて使い分けましょう。
TEXT関数をマスターすることで、Excelでのデータ処理やレポート作成の効率が格段に向上し、あなたの業務がさらにスムーズになること間違いなしです。ぜひ今日から活用してみてください。
関連記事リンク
(こちらの記事スペースに、関連するExcel関数記事へのリンクを追加することで、読者の学習をさらに深めることができます。例: IFS関数、VLOOKUP関数、DATE関数など)

コメント