「TEXT関数」とはエクセルで使える関数のひとつで、数値を文字列に変換することができます。「表示形式」を使用して元の数値を希望する形式で表示したり、文字列や記号と組み合わせたりできます。
「TEXT関数」の書式は
=TEXT(値,表示形式)
であり、これを使用して
「値(数値)」に「表示形式(コード)」で指定した「書式」を適用することで「文字列」に変換した結果を表示する
ことができます。
「表示形式」によって「通貨」「日付」「曜日」「時刻」「分数」「電話番号」「指数表記」など、様々な表示を実現できます。
文字の説明では分かりにくいので、具体的に「TEXT関数」で「値」から「表示形式(コード)」を使って「日付」を「文字列」で表示してみます。
Excel で「日付」には固有の数値(整数)が割り当てられており、
1900/1/1 を 1
1900/1/2 を 2
というようにカウントアップしているので
2000/1/1 は 36526
2023/10/1 は 45200
となります。
つまり「TEXT関数」で「表示形式コード」に年月日を表示させる「"yyyy/m/d"」を使えば「値(整数」から「日付」を表示させることができ、
=TEXT(1,"yyyy/m/d") の結果は 1900/1/1
=TEXT(45200,"yyyy/m/d") の結果は 2023/10/1
となります。
逆に「日付」に対応する「値(整数)」も「TEXT関数」で「表示形式コード」に「"0"」を使えば表示できます。
=TEXT("1900/1/1","0") の結果は 1
=TEXT("2023/10/1","0") の結果は 45200
となります。
さらにこの「日付」に対応した整数を7で割った「余り」を調べれば「曜日」も分かります。
「余り」を計算できる「MOD関数」を使って、たとえば「45200」を「7」で割った余り、つまり 2023/10/1 は
=MOD(45200,7) の結果は 1
となって「余り」が「1」という結果から「日」曜日と分かります。
この処理を「TEXT関数」では「表示形式コード」=「"aaa"」で実行できます。
=TEXT("2023/10/1","aaa") の結果は 日
以上のことより
- 「=TEXT(A1,"aaa")」は、「A1」に入力された「日付」に割り振られた整数を「7」で割った「余り」から「曜日」を割り出し、指定した「表示形式("aaa")」で表示させている
ということになります。
「TEXT関数」では「数値」から「日付」や「曜日」を表示させる以外にも
「数値」を「パーセント表示」にしてみたり、
=TEXT(0.123,"0.0%") の結果は 12.3%
部屋番号の先頭に「0」があっても削除されないようにしてみたり、
=TEXT(213,"0000") の結果は 0213
などなど、いろいろできます。
さらに詳しくは公式サポートサイトを参考にしてみてください。
高度な「表示形式(コード)」は「セルの書式設定」の「ユーザー定義」でも調べたり、確認したりできます。
"aaa" だと「日」、"aaaa" だと「日曜日」になるのが確認できます。
記事の情報は公開時あるいは更新時のもので、最新情報はリンク先など情報元の公式ページでご確認ください。