ExcelのTEXT関数とは|表示形式を文字列に変える意外と奥深い関数

ExcelのTEXT関数は、数値や日付を指定した表示形式の文字列に変換する関数です。日付、金額、コード、帳票、CSV出力、文字列結合、ファイル名作成などで使われます。本記事では、TEXT関数でできることと注意点を実務目線で解説します。

TEXT関数とは何か

TEXT関数とは、Excelで数値や日付を指定した表示形式の文字列に変換する関数です。

基本形は次の形です。

=TEXT(値, "表示形式")

たとえば、日付を「2026年5月28日」のように表示したり、数値を「00123」のようにゼロ埋めしたり、金額を「¥1,000」のように整えたりできます。

一見すると、セルの見た目を変えるだけの関数に見えるかもしれません。 しかしTEXT関数の本質は、計算結果や日付を「人間や外部システムが読める文字列」に変換することです。 この違いが、帳票、CSV、ファイル名、管理番号、メール文の作成で効いてきます。

セルの表示形式とTEXT関数は違う

Excelでは、セルの表示形式を変えるだけでも日付や数値の見た目を変えられます。

たとえば、セルに 2026/5/28 という日付が入っている場合、表示形式を変えれば「2026年5月28日」や「2026-05-28」と表示できます。ただし、この場合、セルの中身は日付のままです。変わっているのは見た目だけです。

一方、TEXT関数は結果を文字列として返します。

つまり、表示形式は「見た目を変える」機能で、TEXT関数は「文字列に変換する」関数です。

この違いは、文字列結合や外部出力で重要になります。セルの見た目だけを整えても、別の文字列と結合すると元の数値や日付の形に戻ってしまうことがあります。 そのような場面でTEXT関数を使います。

日付を整形できる

TEXT関数でよく使うのが日付の整形です。

=TEXT(A1,"yyyy年m月d日")

このように書けば、日付を「2026年5月28日」のような形にできます。

=TEXT(A1,"yyyy/mm/dd") なら「2026/05/28」、=TEXT(A1,"yyyy-mm-dd") なら「2026-05-28」のように、桁数や区切り方を揃えられます。

帳票、メール文、請求書、報告書では、日付の見た目を揃えることが重要です。 特にファイル名や管理コードに日付を入れる場合、yyyy-mm-ddyyyymmdd のように桁数を固定しておくと、並び順が安定します。

数値をゼロ埋めできる

TEXT関数は、数値を桁数固定のコードに変換するときにも使えます。たとえば、A1に 123 が入っている場合、=TEXT(A1,"00000") と書けば、結果は 00123 になります。

顧客ID、案件番号、請求書番号、商品コードなどでは、桁数を揃えることがあります。 セルの表示形式だけでゼロ埋めしていると、文字列として結合したときにゼロが消えることがあります。TEXT関数で文字列化しておけば、ゼロ埋めした形をそのまま使えます。 たとえば、請求書番号を作るなら次のように使えます。 ="INV-"&TEXT(A1,"yyyymm")&"-"&TEXT(B1,"000") 結果は INV-202605-007 のようになります。

金額や割合を整えられる

TEXT関数は、金額や割合の表示にも使えます。

=TEXT(A1,"#,##0")

このように書けば、数値を 12,345 のようにカンマ付きで表示できます。

=TEXT(A1,"¥#,##0") なら円表記、=TEXT(A1,"0.0%") ならパーセント表記にできます。

たとえば、メール本文の中に金額を入れる場合、 ="請求金額は"&A1&"円です" とすると、見た目が崩れることがあります。 この場合は、 ="請求金額は"&TEXT(A1,"#,##0")&"円です" とすれば、読みやすい金額表記にできます。

文字列結合で威力を発揮する

TEXT関数が本当に効くのは、文字列結合の場面です。

Excelでは、& を使って文字をつなげられます。しかし、日付や数値をそのまま結合すると、想定と違う表示になることがあります。

たとえば、日付セルをそのまま結合すると、Excel内部の日付シリアル値として表示されることがあります。

="作成日:"&A1

この結果が「作成日:46170」のようになることがあります。これは、Excelが日付を内部的に数値として管理しているためです。 そこでTEXT関数を使います。 ="作成日:"&TEXT(A1,"yyyy年m月d日") これなら、人間が読める日付として結合できます。 帳票、メール文、ファイル名、管理番号、CSV出力では、この違いが非常に重要です。

ファイル名やコード生成にも使える

TEXT関数は、ファイル名や管理コードの生成にも向いています。

たとえば、日付、部署コード、連番を組み合わせてファイル名を作る場合です。

=TEXT(A1,"yyyymmdd")&"_"&B1&"_"&TEXT(C1,"000")&".pdf"

結果は次のようになります。

20260528_sales_007.pdf こうしておくと、ファイル名の並び順が安定し、管理もしやすくなります。 Excelを帳票管理やファイル作成の入口として使う場合、TEXT関数はかなり重要です。単なる見た目の関数ではなく、出力形式を安定させる関数として使えます。

TEXT関数の注意点

TEXT関数には注意点もあります。

一番重要なのは、結果が文字列になることです。

TEXT関数で変換した値は、見た目は数値や日付に見えても、Excel上では文字列です。そのため、後続の計算に使う場合は注意が必要です。

たとえば、=TEXT(A1,"#,##0") の結果は「12,345」という文字列です。数値として計算したいなら、元の数値セルを使うべきです。

Microsoftの公式サポートでも、TEXT関数は数値をテキストに変換するため、後の計算で参照しにくくなる場合があると説明されています。 つまり、TEXT関数は「計算用」ではなく「表示・出力用」と考えるのが安全です。 計算は数値や日付のまま行い、最後に人間や外部システムへ渡す段階でTEXT関数を使う。この分け方が重要です。

TEXT関数はExcelと外部出力の橋渡し

TEXT関数の奥深さは、Excelの中で計算されたデータを、使える形に整えるところにあります。

Excelは、計算、入力、帳票、印刷、データ管理が同じファイルに混ざりやすい道具です。その中でTEXT関数は、計算結果を人間向けの表示や外部向けの出力に変える役割を持ちます。

会計資料、請求書、営業帳票、案件番号、ファイル名、CSV出力、メール文の自動生成。

こうした場面では、TEXT関数を知っているかどうかで、Excelの扱いやすさがかなり変わります。

TEXT関数は、見た目を整えるだけの関数ではありません。Excelで作った計算結果を、業務で使える文字列に変えるための関数です。

まとめ

TEXT関数は、数値や日付を指定した表示形式の文字列に変換するExcel関数です。

日付を整える、金額をカンマ付きにする、番号をゼロ埋めする、ファイル名を作る、帳票やメール文に数値を埋め込む。こうした場面で使えます。

重要なのは、セルの表示形式とTEXT関数は違うということです。表示形式は見た目を変えるだけですが、TEXT関数は文字列として出力します。

そのため、文字列結合や外部出力で威力を発揮します。