どうも、くまおやぢです。
Excelで日付を入力したのに、セルに「44977」という謎の数字が表示されてしまった経験はありませんか?
あるいは、こんな悩みを抱えていませんか。
先日もパートのおねえさんから相談を受けました。
「請求書の日付欄をExcelで作ったんだけど、『令和8年4月21日』って表示させたいのに、なんかうまくいかなくて…」
分かります、分かります。わたしも最初はまったく同じ場所でつまずきました。日付の「見た目」をコントロールしようとして、書式設定をあれこれいじって、でもうまくいかなくて途方に暮れる。
でも、ご安心を。この記事では、そんな「表示の悩み」をすっきり解決してくれる「TEXT関数」の使い方を、書式コード一覧つきで徹底解説します!
01. はじめに|日付のセルが「44977」になった経験、ありませんか?
こんな場面で困っていませんか?
あなたも、こんな悩みを抱えたことはないでしょうか。
- 「日付を入力したら変な数字が出てきた。どういうこと?」
- 「日付と文字を「&」でつなごうとしたら、日付が数字に化けてしまった」
- 「上司に送る書類の日付を『令和○年○月○日(月)』の形にしたいけど、やり方が分からない」
これ、すべてTEXT関数で解決できます。
急いでいる人へ|TEXT関数の最短手順3ステップ
時間がない方は、まずこの3ステップだけ覚えてください。
- 日付が入ったセル(例: A1)を用意する
- 別のセルに
=TEXT(A1,"yyyy年m月d日")と入力する - Enterで確定し、「2026年4月21日」と表示されているか確認する
書式コードの部分("yyyy年m月d日")を変えるだけで、表示の形を自由に調整できます。詳しい解説は次の章から進んでいきましょう。
02. この記事でできること|TEXT関数を学ぶ前に確認しよう
この記事で学べること
この記事を読み終えたあと、あなたは次のことができるようになります。
- TEXT関数の基本構文を理解できる
- 日付・数値・時刻を好みの書式に変換できる
- よく使う書式コードをすぐに調べられる
- TEXT関数で起きがちなトラブルを自力で解決できる
「書式コードって難しそう」という印象をお持ちでも大丈夫です。コピペでそのまま使えるパターンを、たっぷり用意しました。
動作確認済みの環境
この記事の内容は、以下の環境で動作確認しています。
| 項目 | 内容 |
|---|---|
| OS | Windows 10 / Windows 11 |
| Excel | Excel 2019 / Microsoft 365 |
| 必要な権限 | 一般ユーザー権限のみ(マクロ不要) |
特別な設定やアドインは必要ありません。次の章では、TEXT関数の基礎を見ていきましょう。
03. TEXT関数の基礎知識|「書式変換」とは何か
TEXT関数が解決するもの|「見た目の問題」と「結合の問題」
TEXT関数を使う場面は、大きく分けて2つあります。
①「見た目の問題」を解決する
Excelの日付は、内部では「シリアル値」という数字で管理されています。2026年4月21日は「44977」です。このシリアル値を、人間が読みやすい「2026年4月21日」「令和8年4月21日」などに変換するのがTEXT関数の役割の一つです。
②「結合の問題」を解決する
「見積書は」&A1&「付けで提出します」のように、日付を文字列と「&」で結合しようとすると、日付がシリアル値のまま数字になってしまいます。TEXT関数で先に文字列に変換しておくと、この問題を防げます。
TEXT関数の構文|2つの引数だけ覚えればOK
TEXT関数の書き方は、とてもシンプルです。
=TEXT(値, 表示形式)
| 引数 | 内容 |
|---|---|
| 値 | 変換したい数値や日付が入ったセル、またはそのまま値 |
| 表示形式 | どんな形に変換するかを指定する「書式コード」。必ずダブルクォーテーション(”)で囲む |
たとえばA1セルに「2026/4/21」が入っているなら、
=TEXT(A1,"yyyy年m月d日")
と書くと「2026年4月21日」と表示されます。
「書式コード」さえ分かれば、あとは自由自在です。次の章では、実務でよく使う書式コードをまとめて紹介します。
04. 書式コード一覧|これだけ覚えれば仕事で困らない
「書式コードって無数にあって覚えられない…」という心配はご無用です。実務で使うパターンはだいたい決まっています。必要なときに見返す「お守り」として活用してください。
日付・曜日の書式コード一覧
| 書式コード | 出力例(2026/4/21の場合) |
|---|---|
"yyyy/m/d" | 2026/4/21 |
"yyyy年m月d日" | 2026年4月21日 |
"yyyy年mm月dd日" | 2026年04月21日(月・日が1桁のとき0埋め) |
"yy/m/d" | 26/4/21(西暦2桁) |
"m月d日" | 4月21日 |
"aaa" | 火(曜日の省略形) |
"aaaa" | 火曜日(曜日のフル表記) |
"ddd" | Tue(英語曜日の省略形) |
"dddd" | Tuesday(英語曜日のフル) |
"[$-ja-JP]gee年mm月dd日" | 令和8年04月21日(和暦) |
注意: 和暦の書式コードはMicrosoft 365環境での動作を確認しています。Excel 2019では
"[$-411]ge年mm月dd日"と書く場合があります。
数値・ゼロ埋めの書式コード一覧
| 書式コード | 入力値 | 出力例 |
|---|---|---|
"#,##0" | 12300 | 12,300 |
"#,##0円" | 12300 | 12,300円 |
"¥#,##0" | 12300 | ¥12,300 |
"0.0%" | 0.125 | 12.5% |
"000" | 5 | 005(3桁ゼロ埋め) |
"0000" | 42 | 0042(4桁ゼロ埋め) |
"00000" | 123 | 00123(5桁ゼロ埋め) |
時刻の書式コード一覧
| 書式コード | 出力例 |
|---|---|
"h:mm" | 9:05 |
"h時mm分" | 9時05分 |
"hh:mm:ss" | 09:05:30 |
"[h]時間mm分" | 25時間30分(24時間超えの合計時間) |
24時間を超える合計時間(勤怠管理など)は [h] を使うのがポイントです。
次の章では、書式コードを使った具体的な入力例を見ていきましょう。
05. TEXT関数の基本の使い方|日付を好みの形に変換する
基本例①|「2026/4/21」→「2026年4月21日」に変換する
A1セルに 2026/4/21 が入っている場合、B1セルに以下を入力します。
=TEXT(A1,"yyyy年m月d日")
実行結果: 2026年4月21日
ゼロ埋めしたい(「4月」→「04月」にしたい)場合は、書式コードを "yyyy年mm月dd日" に変えるだけです。
=TEXT(A1,"yyyy年mm月dd日")
実行結果: 2026年04月21日
基本例②|日付に曜日を自動追加する
「2026年4月21日(火)」のように曜日を自動で付けたい場合は、書式コードの中に (aaa) を追加します。
=TEXT(A1,"yyyy年m月d日(aaa)")
実行結果: 2026年4月21日(火)
日付が変われば曜日も自動で変わるので、出勤簿や日報の自動入力にとても便利です。
TODAY関数との組み合わせ|今日の日付を常に自動更新する
TODAY関数と組み合わせると、ファイルを開くたびに「今日の日付」が自動的に変換されて表示されます。
=TEXT(TODAY(),"yyyy年m月d日(aaa)")
実行結果: 2026年4月21日(火)(ファイルを開いた当日の日付に自動更新)
TODAY関数・NOW関数の基本的な使い方についておさらいしたい方は、こちらの記事で詳しく解説しています。詳しくはこちらの記事をご覧ください→ 【ExcelのTODAY関数・NOW関数 完全ガイド|使い分け・タイムスタンプ固定・時刻抽出まで】
次の章では、数値やコード番号への応用テクをご紹介していきます。
06. TEXT関数の応用テク|数値・ゼロ埋め・文字列結合
応用例①|数値にカンマ区切りと円マークを付ける
A1セルに 12300 が入っている場合、以下の式で「¥12,300」と表示できます。
=TEXT(A1,"¥#,##0")
実行結果: ¥12,300
「何円です」という文章と結合したいときも、TEXT関数を使えばきれいに処理できます。
="合計金額は"&TEXT(A1,"¥#,##0")&"になります"
実行結果: 合計金額は¥12,300になります
応用例②|「001」「002」のゼロ埋め管理番号を作る
社員番号や商品コードを「00001」のように常に5桁で揃えたいときは、ゼロ埋めの書式コードが活躍します。
A1セルに 42 が入っている場合:
=TEXT(A1,"00000")
実行結果: 00042
「5桁に足りない場合はゼロで埋める」という指定です。桁数は「0」の個数で調整してください。
応用例③|「&」演算子との組み合わせで書式付き文字列を作る
TEXT関数の出力は「文字列」なので、「&」でほかのセル・文字列と自由に結合できます。
="受注日:"&TEXT(A1,"yyyy年m月d日(aaa)")&" 担当:"&B1
実行結果: 受注日:2026年4月21日(火) 担当:田中
TEXT関数で書式を整えた文字列をさらに他の文字列と結合したい複雑な場面では、CONCATやTEXTJOINが活躍します。詳しくはこちらの記事をご覧ください→ 【CONCAT・TEXTSPLIT・VBAでできる!Excel文字列操作の完全ガイド】
次の章では、TEXT関数を使ったときによくあるトラブルとその対処法をご紹介していきます。
07. よくあるエラー・トラブルと対処法|TEXT関数でハマるポイント
ハマりどころ①|TEXT関数の結果で計算しようとするとエラーになる
症状: TEXT関数で変換した値を別の計算に使おうとすると、#VALUE! エラーが出る。
原因: TEXT関数の出力は「文字列」です。数値の計算には使えません。
対処: 計算に使う値はTEXT関数を通さず、元の数値セルを参照してください。TEXT関数は「表示専用」の関数だと割り切るのが一番です。
❌ =TEXT(A1,"#,##0") + 100 → エラー(文字列に数値を足せない)
⭕ =A1 + 100 → 正しい計算。表示だけTEXTで変換する
ハマりどころ②|書式コードを「”」で囲み忘れてエラーになる
症状: =TEXT(A1, yyyy年m月d日) と入力したら #NAME? エラーが出た。
原因: 書式コードはダブルクォーテーション(”)で囲まなければなりません。囲み忘れるとExcelが書式コードを関数名や変数と誤認します。
対処: 書式コードを入力するときは、必ず " で囲む習慣をつけてください。
❌ =TEXT(A1, yyyy年m月d日) → #NAME? エラー
⭕ =TEXT(A1,"yyyy年m月d日") → 正常に動作
ハマりどころ③|セルの表示形式とTEXT関数を混同している
症状: セルの書式設定で日付の見た目を変えているが、「&」で結合するとシリアル値が出てきてしまう。
原因: セルの「表示形式」は見た目を変えるだけで、セルの中身は数値のままです。「&」で結合するとExcelは中身(数値)を取り出して結合します。TEXT関数はこの「中身の変換」まで行います。
対処: 文字列として結合・活用したい場合は、必ずTEXT関数を使って文字列に変換してから結合してください。
❌ ="受注日:"&A1 → "受注日:44977" のようになる
⭕ ="受注日:"&TEXT(A1,"yyyy年m月d日") → "受注日:2026年4月21日" と正しく表示
08. 実務での活用例|現場でよく使われるシーン3選
活用例①|請求書の日付を「令和○年○月○日」形式に自動変換
A1セルに請求日(例: 2026/4/21)を入力しておき、請求書の表示欄に以下を入力します。
=TEXT(A1,"[$-ja-JP]gee年mm月dd日")
実行結果: 令和8年04月21日
A1の日付を変えるだけで、令和表記が自動更新されます。和暦への手入力は一切不要です。
動作確認環境: Microsoft 365(Excel 2019では書式コードが異なる場合があります)
活用例②|出勤簿に曜日を自動表示して土日を分かりやすく
B列に日付が並んでいる出勤簿で、C列に曜日を自動表示する場合:
=TEXT(B2,"aaa")
B2を下方向にオートフィルするだけで「月・火・水・木・金・土・日」が自動的に並びます。条件付き書式と組み合わせて土日を色分けすると、さらに見やすくなります。
活用例③|商品・社員コードのゼロ埋めを自動化
社員番号がA列に数値で入っている場合、B列に「5桁のゼロ埋めコード」を作るには:
=TEXT(A2,"00000")
A2に 42 が入っていれば 00042、1234 が入っていれば 01234 と自動変換されます。コード体系の変更や桁数変更も、書式コードを修正するだけで一括対応できます。
09. まとめ|今日からTEXT関数で「見た目の悩み」を卒業しよう
振り返りチェックリスト
この記事を読んで、以下の5点を理解できましたか?
- [ ] TEXT関数の構文(値, 表示形式の2引数)を理解した
- [ ] 日付を「yyyy年m月d日(aaa)」の形に変換できる
- [ ] 数値にカンマ区切りやゼロ埋めを適用できる
- [ ] 「&」で文字列と結合するときにTEXTが必要な理由が分かった
- [ ] TEXT関数の結果は「文字列」であり、計算には使えないと理解した
今日やること1つだけ|任意のセルにTEXT関数を入力してみる
まずは、今日の業務の隙間にこれだけやってみてください。
- 空いているセルに適当な日付(例:
2026/4/21)を入力する - 隣のセルに
=TEXT(A1,"yyyy年m月d日(aaa)")と入力する - 「2026年4月21日(火)」と表示されたら完成!
「書式コードって何だろう」という段階から、「なんだ、これだけか!」というグッと楽な感覚に変わるはずです。
次のステップ|余裕が出たらCONCATやTEXTJOINと組み合わせてみよう
TEXT関数の書式変換に慣れてきたら、ぜひCONCATやTEXTJOINとの組み合わせに挑戦してみてください。複数のセルの値を書式指定しながら一度に結合できるので、請求書や報告書の文章を自動生成するテクにもつながります。
慣れてきたら条件付き書式と組み合わせて、曜日ごとにセルを色分けするところまでチャレンジしてみる。そういう順番で少しずつ積み上げていくのが、長続きするやり方だとわたしは思っています。
ぜひ、今日の業務の隙間に、まず1つだけTEXT関数を入力してみてください。
あなたのフィードバックが次の記事のヒントになります。
動作確認環境: Windows 10 / Windows 11、Excel 2019 / Microsoft 365


コメント