TEXT 関数

適用先
Excel for Microsoft 365 Excel for Microsoft 365 for Mac Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2016

TEXT 関数を使用すると、表示形式コードを使用して数値に書式設定を適用することで、数値の表示方法を変更することができます。 これは、数値をより読みやすい形式で表示する場合や、数値を文字列または記号と組み合わせる場合に便利です。

TEXT 関数は数値を文字列に変換するため、後で計算する際の参照が困難になる場合があります。 1 つのセルで元の値を保持し、別のセルで TEXT 関数を使用するのが最善です。 この後、他の数式を作成する必要がある場合は必ず、TEXT 関数の結果ではなく、元の値を参照するようにします。

技術的詳細

構文

TEXT(value, format_text)

TEXT 関数の構文には、次の引数があります。

引数名 説明
value テキストに変換する数値。
format_text 指定された値に適用する書式を定義するテキスト文字列。

概要

その最も簡単な形式で、TEXT 関数は次のようになります。

  • =TEXT(書式設定する値, "適用する表示形式コード")

次に、よく使われている例をいくつか紹介します。これを Excel に直接コピーして、自分で試してみることができます。 表示形式コードを引用符で囲む必要があることにご注意ください。

数式 説明
=TEXT(1234.567,"$#,##0.00") 桁区切り記号と小数点以下 2 桁を設定した通貨 (例: $1,234.57)。 Excel は、値を小数点以下 2 桁に四捨五入することにご注意ください。
=TEXT(TODAY(),"MM/DD/YY") MM/DD/YY 形式で表示された今日の日付 (例: 03/14/12)
=TEXT(TODAY(),"DDDD") 今日の曜日 (月曜日など)
=TEXT(NOW(),"H:MM AM/PM") 現在の時刻 (例: 1:29 PM)
=TEXT(0.285,"0.0%") パーセンテージ (例: 28.5%)
=TEXT(4.34 ,"# ?/?") 分数 (例: 4 1/3)
=TRIM(TEXT(0.34,"# ?/?")) 分数 (例: 1/3)。 これは、TRIM 関数を使用して小数点の先頭のスペースと 10 進数を削除することにご注意ください。
=TEXT(12200000,"0.00E+00") 指数表記 (例: 1.22E+07)
=TEXT(1234567898,"[<=9999999]###-####;(###) ###-#####") その他 (電話番号) (例: (123) 456-7898)
=TEXT(1234,"0000000") 先頭のゼロ (0) を追加 (例: 0001234)
=TEXT(123456,"##0° 00' 00''") ユーザー設定 - 緯度/経度

  • TEXT 関数を使って書式設定を変更することはできますが、それだけが方法ではありません。 CTRL+1 (または Mac の MAC コマンド ボタン アイコン + 1 の画像) を押してから、[セル>数値の書式設定] ダイアログ ボックスから目的の書式を選択すると、数式なしで書式を変更できます。
  • "MM" または "mm" を単独で使用すると、月が返されます。 時間の場合は "HH"、秒の場合は "SS" と組み合わせると、代わりに分が返されます。 "HH:MM", "MM:SS"

サンプルをダウンロードする

この記事で紹介している TEXT 関数のすべての例の他にいくつかの例を追加したサンプルのブックをダウンロードできます。 これに従うか、TEXT 関数の表示形式コードを独自に作成することができます。

Excel TEXT 関数の例をダウンロードする

使用可能なその他の表示形式コード

[ セルの書式設定 ] ダイアログ ボックスを使用して、他の使用可能な書式コードを見つけることができます。

  1. Ctrl+1 (Mac の MAC コマンド ボタン アイコン+ 1 の画像) を押して、[セルの書式設定] ダイアログ ボックスを表示します。
  2. [ 数値 ] タブから目的の書式を選択します。
  3. [ カスタム] オプションを選択します。
  4. 目的の表示形式コードが [種類] ボックスに表示されます。 ここでは、[種類] ボックスで、セミコロン (;) と @ 記号を除くすべての文字を選択します。 次の図は、mm/dd/yy のみを選んでコピーした時点の画面を示しています。
  5. Ctrl + C キーを押して書式コードをコピーし、[キャンセル] を押して [セルの書式設定] ダイアログ ボックスを閉じます。
  6. 後は、Ctrl + V キーを押して表示形式コードを TEXT 関数の数式に貼り付けるだけです。たとえば、=TEXT(B2,"mm/dd/yy") となります。 書式コードを引用符 ("書式コード") で囲んで貼り付けてください。貼り付けしないと、Excel はエラー メッセージを表示します。

[セル > 書式設定] > 数値 > [カスタム] ダイアログを使用して、Excel で書式文字列を作成する例。

カテゴリ別の表示形式コード

次に、[ セルの書式設定 ] ダイアログ ボックスを使用して値に異なる表示形式を適用し、[ カスタム] オプションを使用してそれらの 表示形式 コードを TEXT 関数にコピーする方法の例をいくつか示します。

数値の表示形式を選ぶ

先頭のゼロ

Excel で先頭のゼロが削除されるのはなぜですか?

Excel は、セルに入力される数値を探すように設計されており、部品番号や SKU など、文字列のように見える数値は探しません。 先頭の 0 を保持するには、入力範囲を文字列として書式設定した後、値を貼り付けるか、または入力します。 値を入れる列または範囲を選択し、 Ctrl+1 キーを押して [セル > 書式設定 ] ダイアログを表示し、[ 数値] タブ[テキスト] を選択します。 これで、Excel は先頭のゼロを保持します。

既にデータを入力済みで、Excel で先頭のゼロが削除されている場合は、 TEXT 関数を使用してそれらを追加し直すことができます。 値のある一番上のセルを参照し、 =TEXT(value,"00000")を使用します。数式のゼロの数で必要な文字の合計数を表し、残りのセル範囲にコピー&ペーストします。

TEXT を使用して先頭のゼロを書式設定する例。 =TEXT(A2,00000) 何らかの理由でテキスト値を数値に変換する必要がある場合は、 =D4*1 のように 1 を乗算するか、 =--D4 のように二重単項演算子 (--) を使用できます。

桁区切り記号を表示する

Excel では、番号記号 (#) またはゼロで囲まれたコンマが表示形式に含まれている場合、数値が 3 桁ごとにコンマで区切られます。 たとえば、書式文字列が "#,###" の場合、Excel では数値 12200000 が 12,200,000 として表示されます。

桁プレースホルダーの後に続くコンマは、数値を 3 桁ずつ拡張または縮小します。 たとえば、書式設定文字列が "#,###.0," の場合、Excel では、数値 12200000 が 12,200.0 として表示されます。

桁区切り記号を使用した TEXT 関数の例

  • 桁区切り記号は、ご使用の地域の設定によって異なります。 米国ではコンマですが、その他のロケールでは、ピリオド (.) になる場合があります。
  • 桁区切り記号は、数値、通貨、会計の表示形式に使用することができます。

数値、通貨、会計の表示形式

次に、標準の数値 (桁区切り記号と 10 進数)、通貨、および会計の表示形式の例を示します。 通貨表示形式を使用すると、選択した通貨記号を挿入して、値の横に配置することができます。一方、会計表示形式では、通貨記号がセル内で左揃えで配置されます。 次に示す、通貨表示形式コードと会計表示形式コードの違いにご注意ください。この例の会計表示形式は、アスタリスク (*) を使用してシンボルと値を分離しています。

数値、通貨、会計形式の TEXT 関数の例 通貨記号の書式コードを見つけるには、まず Ctrl+1 (Mac の場合、MAC のコマンド ボタン アイコンの画像+1) を押し、目的の書式を選択して、[記号] ドロップダウンから記号を選択します。

[セルの書式設定] ダイアログでの通貨記号の選択次に、[カテゴリ] セクションの左側にある [カスタム] をクリックし、通貨記号を含む書式コードをコピーします。

TEXT 関数 - 記号を使用したカスタム通貨

TEXT 関数は色の書式設定をサポートしないので、[セルの書式設定] ダイアログで、$#,##0.00_);[Red]($#,##0.00) のような数値の表示形式コードをコピーすると、TEXT 関数はその表示形式コードを受け入れますが、色は表示されません。

日付

月を表す "M"、日を表す "D"、および年を表す "Y" を組み合わせて使用することで、日付の表示方法を変更できます。

月、日、年の形式のコード TEXT 関数の書式コードでは大文字と小文字が区別されないため、"M" または "m"、"D" または "d"、"Y" または "y" のいずれかを使用できます。

Excel MVP Mynda Treacy Mynda のお勧め...
Excel ファイルとレポートをさまざまな国のユーザーと共有する場合、各国の言語でレポートを提供したいことがあります。 Excel MVP である Mynda Treacy は、この Excel の日付を異なる言語で表示する 記事で素晴らしいソリューションを提供しています。 また、ダウンロードできるサンプル ブックも掲載されています。

時刻

時を表す "H"、分を表す "M"、秒を表す "S"、および 12 時間形式を表す "AM/PM" を組み合わせて使用することで、時刻の表示方法を変更できます。

時、分、秒の時刻形式 "AM/PM" または "A/P" を省略すると、時刻は 24 時間制に基づいて表示されます。

"m" には月または分のどちらを表しても構いません。分を表示するには、分を正しく表示するためには "h:m" または "hh:mm" の形式で表示する必要があります。 "h" を省略すると、Excel は月の値を表示します。 分のみを表示するには、例に示すように RIGHT 関数を使用します。

TEXT 関数の表示形式コードは大文字と小文字を区別しないので、"H" または "h"、"M" または "m"、"S" または "s"、"AM/PM" または "am/pm" のいずれも使用できます。

"h" ("[h]") を角かっこで囲むと、Excel に時間カウントを 24 時間ごとにリセットしないように指示します。 つまり、角かっこを使用すると、合計経過時間を表示できます。 角かっこを使用すると、経過時間を時、分、秒で表示できます。

パーセンテージ

パーセンテージ (%) 表示形式を使用して小数値の表示方法を変更できます。

パーセントの表示形式コード

分数

分数 (?/?) 表示形式を使用して小数値の表示方法を変更できます。

分数の表示形式コード

指数表記

指数表記は、1 から 10 までの 10 進数に 10 の累乗を乗算する形式で数値を表示する方法です。 多くの場合、指数表記は、大きな数字を短縮して表示するために使用されます。

指数表記の表示形式コード

[その他] 表示形式

Excel には、次の 4 つの特別な表示形式が用意されています。

  • 郵便番号 - "00000"
  • 郵便番号 + 4 - "00000-0000"
  • 電話番号 - "[<=9999999]###-####;(###) ###-####"
  • 社会保障番号 - "000-00-0000"

TEXT 関数の特別な形式 特別な形式はロケールによって異なりますが、ロケールに特別な形式がない場合、またはニーズを満たさない場合は、[ セルの書式設定>カスタム ] ダイアログを使用して独自の形式を作成できます。

一般的なシナリオ

TEXT 関数は、単独で使用されることはほとんどなく、多くの場合、他の関数と組み合わせて使用されます。 たとえば、テキストと数値 (例: レポートの印刷日: 2012 年 3 月 14 日) や "週単位の収益: 66,348.72 ドル" などを組み合わせたいとします。 Excel に手動で入力することもできますが、Excel に自動的に入力させるという目的が無意味になります。 残念ながら、テキストと、日付、時刻、通貨などの書式設定された数値を組み合わせると、Excel では表示方法がわからないため、数値の書式設定が削除されます。 この場合、TEXT 関数が重要なのは、"MM/DD/YY" のような書式コードを使用することで、Excel に任意の形式の値を書式設定させることができるためです。

次の例では、 TEXT 関数を使用せずにテキストと数字を結合しようとするとどうなるかを確認できます。 今回は、 アンパサンド (&) を使用して、文字列、スペース (" ")、および =A2&" "&B2 の値を連結します。

TEXT 関数を使用せずにテキストを結合する例 ご覧のように、Excel はセル B2 の日付から書式設定を削除しました。 次の例では、TEXT 関数を使用して目的の書式を適用する方法を示しています。

TEXT 関数を使用してテキストを結合する例 更新された数式は次のとおりです。

  • Cell C2:=A2&" "&TEXT(B2,"mm/dd/yy") - 日付表示形式

よく寄せられる質問

123 を One Hundred Twenty-Three のように、数値をテキストに変換するにはどうすればよいですか?

残念ながら、TEXT関数ではそれを行うことはできません。Visual Basic for Applications (VBA) コードを使用する必要があります。 次のリンクには、Excel で数値を英単語に変換する方法という方法が記載されています。

文字列の大文字と小文字を変更できますか。

はい。UPPER 関数、LOWER 関数、PROPER 関数を使用できます。 たとえば、=UPPER("hello") は、"HELLO" を返します。

セルで Alt + Enter キーを押した場合と同様、TEXT 関数を使用して新しい行 (改行) を追加できますか。

はい。ただしいくつかの手順が必要です。 まず、これを行うセルを選択し、Ctrl+1 キーを使用して [セル>書式設定] ダイアログ ボックスを表示し、[配置] > [テキスト] コントロール> チェック [文字列の折り返し] オプションを表示します。 次に、改行が必要な場所に、ASCII 関数 CHAR(10) を含めて、完成した TEXT 関数を調整します。 最終結果の配置に応じて、列幅を調整する必要がある場合があります。

38f8e0f1-99d8-4c4f-979a-dfd1bcde1bf7

この場合、="Today is: "&CHAR(10)&TEXT(TODAY(),"mm/dd/yy") を使用しています。

Excel が数値エントリを、たとえば 1.22E+07 などに変換するのはなぜですか。

これは 指数表記法と呼ばれ、Excel では、セルが [ 全般] として書式設定されている場合は 12 桁よりも長い数値、セルが 数値として書式設定されている場合は 15 桁を超える数値を自動的に変換します。 長い数値文字列を入力する必要があるが、それを変換したくない場合は、Excel に値を入力または貼り付ける前に、問題のセルを テキスト として書式設定します。

各言語で表示する Excel の日付

Excel MVP Mynda Treacy Mynda のお勧め...
Excel ファイルとレポートをさまざまな国のユーザーと共有する場合、各国の言語でレポートを提供したいことがあります。 Excel MVP である Mynda Treacy は、この Excel の日付を異なる言語で表示する 記事で素晴らしいソリューションを提供しています。 また、ダウンロードできるサンプル ブックも掲載されています。