TEXT関数の使い方
数値を指定した形式の文字列に変換します。
200720102013201620192021365
- 構文
-
=TEXT(値, 表示形式) - 引数
-
- 値必須
- 表示形式必須
- どんな関数か
TEXT は、数値や日付を指定した見た目の文字列に変える関数です。「2026/10/04」を「10月4日(日)」に、1234567 を「1,234,567円」にできます。セルの表示形式と似ていますが、こちらは結果が文字列になるところが違います。文字列になるので、そのままでは足し算や並べ替えに使えません。文章の中に日付や金額を差し込むとき(
="締切は"&TEXT(A1,"m月d日")&"です")に向いています。- 使用例
-
B2 に
=TEXT(A2, "m月d日(aaa)")を入れると、こうなります。A B 1 日付 表示 2 2023/1/1 1月1日(日) 数式を入れたセル
結果: 1月1日(日)
つまずきやすいところ
- 返るのは文字列。そのままでは計算に使えない
- 書式は
"yyyy/mm/dd"のように " で囲む - 表示を変えるだけなら、関数より「セルの書式設定」のほうが値を保てる
よくあるエラーと、その直し方
#NAME?- 表示の形(
"yyyy/mm/dd"など)を"で囲み忘れた2つめは必ず"で囲む。TEXT(A1, yyyy/mm/dd)ではなくTEXT(A1, "yyyy/mm/dd")
TEXTを使う実例レシピ(9件)
- 日付を和暦や曜日に変換する2023/1/1を「2023年01月01日(日)」のような日本語形式にする。
- 日付を「◯月◯日(曜)」という形式の文字にする日付データを、別のセルで特定の日本語形式に固定して表示したい。
- 日付から「月曜日」といった曜日名を出すカレンダーのように、日付の横に日本語で曜日を自動表示したい。
- 勤務時間を「〜時間〜分」の形式で計算する退勤時間から出勤時間を引いて、実労働時間を求めたい。
- 計算結果が0の時に「-」や「未入力」と出す0がたくさん並んで見づらい表を、スッキリ整えたい。
- 製造日と行番号から「ロット番号」を自動生成「20231005-001」のような、追跡(トレサビ)用のユニークな番号を作りたい。
- 入社年と連番から「社員番号」を自動生成23年度入社の1番なら「2023-001」という番号を数式で作りたい。
- 内線番号を「(内線) 123」という形式で統一数字だけ入力された列を、見やすいテキスト形式に変換して公開したい。
- 極小の数値を「科学記法(1.23E-05)」でテキストにする0.0000123のような数値を、論文やレポート用の標準的な形式で表示したい。