Excelで日付を文字列に変換したいときは、TEXT関数を使うのがいちばん早いです。請求書の年月表示、ファイル名用の日付、曜日付きの表示などもまとめて整えられます。この記事では、まずすぐ使える数式を先にお見せして、そのあとで入力手順、よくあるエラー原因、時短ワザまでまとめて分かりやすく解説します。
まず結論:日付を文字列に変換するTEXT関数はこれです
たとえばA1に日付が入っているなら、次のように使います。
- =TEXT(A1,"yyyy/mm/dd") → 2025/06/25
- =TEXT(A1,"yyyy年m月d日") → 2025年6月25日
- =TEXT(A1,"yyyy-mm") → 2025-06
- =TEXT(A1,"m/d(aaa)") → 6/25(水)
ポイントは、TEXT関数で作った結果は見た目だけでなく文字列になることです。表示形式を変えるだけとは違うので、他の文字とつなげたいときや、ファイル名・帳票名に使いたいときに便利ですよ。
TEXT関数で日付を文字列に変換する手順
実際の操作はとてもシンプルです。Excelに慣れていない方でも、この順番で進めれば大丈夫です。
- 日付が入っているセルを確認します。たとえば A1 に 2025/6/25 が入っている状態にします。
- 変換結果を表示したい空いているセルをクリックします。たとえば B1 を選びます。
- 数式バー、またはセルに直接 =TEXT(A1,"yyyy/mm/dd") と入力します。
- Enter キーを押します。
- B1に、文字列として 2025/06/25 が表示されます。
これで完了です。もし下の行にも同じ処理をしたい場合は、B1の右下にマウスを合わせて、十字マークになったら下へドラッグしましょう。まとめてコピーできます。
よく使う日付の書式パターン一覧
TEXT関数は、書式コードを変えるだけで表示を自由に調整できます。仕事で使いやすいものを先に押さえておきましょう。
基本の日付形式
- yyyy/mm/dd :2025/06/25
- yyyy-mm-dd :2025-06-25
- yyyy年m月d日 :2025年6月25日
- m/d :6/25
- mm/dd :06/25
月だけ・年月だけにしたい場合
- yyyy/mm :2025/06
- yyyy年m月 :2025年6月
- m月 :6月
曜日を付けたい場合
- aaa :水
- aaaa :水曜日
- =TEXT(A1,"yyyy/mm/dd(aaa)") :2025/06/25(水)
文字列に変換する理由と、表示形式との違い
「セルの表示形式を日付にする」のと「TEXT関数で文字列に変換する」のは、似ているようで役割が違います。
- 表示形式の変更:中身は日付のまま。計算や並べ替えに強いです。
- TEXT関数:結果が文字列になる。他の文字と結合しやすいです。
たとえば、請求書番号や件名を自動で作りたいときにはTEXT関数が便利です。
- ="請求書_"&TEXT(A1,"yyyymmdd") → 請求書_20250625
- ="提出期限:"&TEXT(A1,"yyyy年m月d日(aaa)") → 提出期限:2025年6月25日(水)
逆に、あとで日付の差を計算したい、並べ替えたいという場合は、最初からTEXT関数で文字列にせず、日付データのまま扱うほうが安全です。
コピペで使える実務向けのTEXT関数例
ファイル名に使いやすい形にする
- =TEXT(A1,"yyyymmdd")
結果例:20250625
スラッシュが入らないので、ファイル名やフォルダ名に向いています。
メール件名や報告書タイトル向け
- ="週報_"&TEXT(A1,"yyyy年m月d日")
結果例:週報_2025年6月25日
曜日付きで見やすくする
- =TEXT(A1,"m月d日(aaa)")
結果例:6月25日(水)
月初・月次資料向け
- =TEXT(A1,"yyyy年m月")
結果例:2025年6月
上手くいかないときのチェックポイント
TEXT関数がうまく動かないときは、だいたい原因が決まっています。ここを順番に確認してみてください。
#NAME? エラーになる
- 関数名のつづりが TEXT になっているか確認します。
- かっこが半角になっているか確認します。
- 書式コードを囲むダブルクォーテーション " " が抜けていないか確認します。
例として、=TEXT(A1,yyyy/mm/dd) だとエラーになります。正しくは =TEXT(A1,"yyyy/mm/dd") です。
思った表示にならない
- m と mm の違いを確認します。mは6、mmは06です。
- d と dd の違いも同じです。dは5、ddは05です。
- 曜日は aaa や aaaa を使います。
「06月」のようにゼロ埋めしたいなら、mではなくmmを使いましょう。
そのまま表示されて数式が計算されない
- セルの先頭に '(シングルクォート)が入っていないか確認します。
- セルの表示形式が「文字列」になっている場合は、「標準」に戻してから再入力します。
- 入力後に F2 を押して、もう一度 Enter を押すと直ることがあります。
変換元の日付が実は文字列になっている
A1が見た目では日付でも、中身が文字列だと期待どおりに変換できないことがあります。次のポイントを確認しましょう。
- セル内で左寄せになっていると、文字列の可能性があります。
- =ISNUMBER(A1) と入力して TRUE なら日付データ、FALSE なら文字列の可能性が高いです。
- 文字列の日付を本物の日付に直したいときは、データ タブの区切り位置や、DATEVALUE関数 を使う方法があります。
文字列の日付を本物の日付に戻したい場合
TEXT関数の結果は文字列なので、あとから日付計算に使いたいときは注意が必要です。もし文字列を日付として使いたいなら、次の方法を試してください。
- 文字列の日付が入っているセルを選びます。
- データ タブをクリックします。
- 区切り位置 をクリックします。
- そのまま 次へ を2回クリックします。
- 列のデータ形式で 日付 を選びます。
- 完了 をクリックします。
この方法で、文字列として入っていた日付が日付データに戻ることがあります。
仕事が速くなる豆知識
TEXT関数は&記号とセットで使うと便利
Excelでは、& を使うと文字をつなげられます。TEXT関数と組み合わせると、件名や管理番号を一気に作れます。
- ="納品日_"&TEXT(A1,"yyyy/mm/dd")
- ="売上集計_"&TEXT(A1,"yyyymm")
下まで一気にコピーする時短操作
- 数式を入れたセルをクリックします。
- 右下のフィルハンドルをダブルクリックします。
- 隣のデータ行に合わせて、下まで自動コピーされます。
行数が多い表ではかなり時短になりますよ。
数式表示をすぐ確認するショートカット
- Ctrl + Shift + @ ではなく、数式確認なら Ctrl + ` が便利です。
ワークシート内の数式をまとめて表示できるので、TEXT関数の入力ミスチェックがしやすくなります。
まとめ
Excelで日付を文字列に変換したいときは、=TEXT(A1,"yyyy/mm/dd") を基本形として覚えておけばまず困りません。あとは、yyyy、mm、dd、aaa を組み合わせるだけで、仕事に合った表示に調整できます。もしエラーになったら、ダブルクォーテーションの有無、元データが本当に日付かどうか、セルの表示形式をチェックしてみてください。必要な形にすぐ整えられるようになると、資料作成やファイル整理がかなり楽になりますよ。
