スプレッドシートで、数値を好きな表示形式の文字列に変換できるTEXT関数について、使い方と内部のしくみを解説します。草野球の成績管理表で打率を「.320」のような表記に変換する場面を例に、初心者向けに丁寧に説明します。
TEXT関数とは
数値を、指定した表示形式にあわせた文字列に変換する関数です。成績管理表では、そのままだと「0.32」と表示されてしまう打率を、野球でおなじみの「.320」という表記に整えたいときなどに使います。
基本の書式はこうです。
=TEXT(数値, 表示形式)
表示形式の部分は「”0.000″」のように、ダブルクォーテーションで囲んだ文字列として指定します。
成績管理表での実例:打率を「.320」のような表記に変換する
大阪グーニーズの個人成績シートでは、各選手の打数・安打から打率を計算しています。仮に、C列に打数、D列に安打、E列に「安打÷打数」で計算した打率(小数)が入っているとします。
| 選手名 | 打数 | 安打 | 打率(小数) |
|---|---|---|---|
| SUZUKI | 25 | 8 | 0.32 |
| NAKATA | 30 | 6 | 0.2 |
| … | … | … | … |
このE列の打率をそのまま表示すると「0.32」や「0.2」のように、先頭に0が付いたり桁数がバラバラになったりします。野球の成績表でおなじみの「.320」「.200」という表記(先頭の0を省き、小数点以下3桁で揃える)に変換したいとき、式はこうなります。
=TEXT(E2,".000")
これで、E2セルの小数(0.32)が、先頭の0を省いた文字列「.320」に変換されます。
打率を「.320」表記で表示したいセル(小数の打率とは別の列)をクリックして選択します。
対象セル(例:E2)をクリックし、カンマで区切ってから、表示形式を「”.000″」のようにダブルクォーテーションで囲んで入力します。
式を確定すると、すぐに「.320」のような表記の文字列がセルに表示されます。
しくみを理解する:TEXTは何をしているのか
TEXT関数がしていることは、セルの「表示形式」の設定と似ているようで、実は大きく違います。セルの表示形式は「値は数値のまま、見た目だけを変える」機能ですが、TEXT関数は指定した表示形式に沿って数値を文字列そのものに変換して返します。
- 表示形式の「0」は「その桁に必ず数字を表示する(なければ0を表示する)」という意味の記号
- 先頭の桁に「0」を置かない表示形式(「.000」のように)を指定すると、1未満の数値では先頭の0が省略される
- 変換後の値は文字列になるため、SUMなど数値専用の関数の対象からは外れる(SUM関数の回で解説した「文字列は無視される」しくみが、ここでも同じように働く)
よくあるミス
「=TEXT(E2,.000)」のように表示形式をダブルクォーテーションで囲み忘れると、エラーになります。表示形式は必ず文字列として「”.000″」のように指定してください。
TEXT関数の結果は文字列です。そのため、変換後の「.320」という値をさらに別の計算式で使おうとすると、数値として扱われずエラーになったり、SUMなどの集計から静かに除外されたりします。計算に使う小数の打率と、表示用に整えた文字列は、別の列に分けて持たせるのが安全です。
- TEXT関数は「指定した表示形式に沿って数値を文字列に変換する」関数
- 表示形式の書き方次第で、先頭の0を省いたり桁数を揃えたりできる
- 変換後の値は文字列になるため、集計用の数値としては使えない点に注意する
次回予告
次回のテーマは「LEFT関数・RIGHT関数・MID関数」です。文字列を位置指定で切り出すしくみを、スコアブックのメモから必要な部分だけを抜き出す例で解説していきます。



コメント