【Excel練習問題】TEXT関数

TEXT関数練習問題 Excel

TEXT関数とは

👉 数値を「指定した表示形式の文字列」に変換するExcel関数

TEXT関数の基本構文と重要なルールを参考の上、練習問題で基本を身につけていきましょう。

日付データから曜日を求める

献立表やスケジュール表に曜日を表示したい場合があります、しかし任意の日付に対し、その曜日を求めるには難しい計算が必要です。こんな時に、曜日に関する情報を求める関数が「TEXT関数」です。

👉曜日をすぐに確認したときに役立ちます。

問題①:日付から曜日を自動入力する

  • 曜日の欄をTEXT関数で求めましょう
日付から曜日を求めるTEXT関数

💡ヒント

  • 木曜日(曜日)と表示するには、第二引数(表示形式)には文字列(a)で設定する。

⭐①解答

【B3】

=TEXT(A3,”aaaa”)

手順

  1. 曜日を表示するセル【B3】をクリックして指定。
  2. 「関数の挿入」から「TEXT」関数を選択して「OK」。
関数の挿入からTEXT関数

3.値は、 日付の【A2】をクリックしてから表示形式には「aaaa」を入力して「OK」

関数の引数

4. 【B11】まで(ダブルクリックまたは、オートフィル)コピーします。

ダブルクリックでコピー

ポイント

[aaaa」と「a」を4文字指定すると「木曜日」のような「曜日」の入った文字が返り、「aaa」と「a」を3文字指定すると「金」のような曜日が入らない文字が返ります。

「a」を4文字指定すると「木曜日」3文字指定すると「金」

文字列と結合した「金額」の書式を整える

TEXT関数で「&」を使ってセルの数値と文字列をつないで表示します。

数値の桁区切り(#,##0)を組み合わせるとざまざまな表示形式が指定できます。

👉&(アンド)はセルをつなぐことができひとつの文字列を作ることができる。

👉(#,##0)で数値の桁区切りした金額が表示できる

問題②:金額に文字列をつなぐ

  • 御請求金額(税込)【F15】にTEXT関数を使い「金額」と「円也」を表示する。
TEXT関数を使い「金額」と「円也」を表示

💡ヒント

  • 桁を示す「#」などの書式記号を組み合わせる
  • 3桁のカンマ区切り
  • 数値の末尾に「円也」をつなぐときは「””」ダブルクオーテーションで囲む

⭐②解答

=TEXT(F13,”#,##0″&”円也”)

手順

  1. 御請求書(税込み)金額を表示するセル【F15】セルをクリックして選択します。
  2. 「関数の挿入」から「TEXT」関数を選択して「OK」。
  3. 「値」に【F13】(総計)を選択して、「表示形式」に「#,##0」を入力したら「”&”円也”」を入力して「OK」。

ポイント

“&”円也”は、必ず「””」ダブルクオーテーションで囲みます。

&」を使うことで元々あった書式(例:カンマ区切りなど)は反映されないので、TEXT関数を使用してカンマ区切りなどをの書式を設定する。

123.123→&だけで文字をつなぐと123123になってしまう

TEXT関数で、「#,##0」桁区切りを使うと→123.123になります。

「&」だけで文字をつないだ場合桁区切りできない

書式記号で表示形式の応用

例えば、「=TEXT(F13,”#万###0″&”円也”)」という式を立てれば「32万2850円也」と表示されます。

困ったちゃん
困ったちゃん

「#」は桁数っていうのはわかるんだけど、「0」はどうしてつけなければいけないの?

ももねこ先生
ももねこ先生

「#,##0」のように末尾を「0」にしておくと、セルには「0」が表示されます。一方、「#,###」のように「#」にすると、セルには「0」が表示されないでのです。

日本語環境や最新のExcel 365 では、0を空欄にせず表示するよう改善されているケースもあります。どんな環境でも確実に表示するには、「0」を末尾にいれましょう。

表示形式を変更する

エクセルでは「セルの書式設定」から、色々な表示形式を変更することができまが、それを関数で行えるのがTEXT関数なのです。

問題③:数値データの表示形式を変更

  • TEXT関数で、開始時間から終了時間までの「分」と「働きました」の文字列を表示します。

💡ヒント

  • m(分)をそのまま表示する[]半角角括弧を使う。
  • 終了時間から開始時間を引いて「分」の計算をする。

⭐③解答

=TEXT(C2-B2,”[m]分働きました”)

手順

  1. 【D2】セルをクリックして選択。
  2. 「関数の挿入」から「TEXT」関数を選択して「OK」。
  3. 値に、終了時間【C3】から開始時間【B3】を引く。
  4. 表示形式に、[m](mは分・[]半角角括弧で囲むと60分を超えてもそのまま表示)と文字列「分働きました」を入力して「OK」。
  5. 【D4】までコピーする。

ポイント

半角の角括弧 [ ]の使い方

「m」だけなら60分を超す表示ができないので半角の角括弧 [ ]で囲む必要があります。

困ったちゃん
困ったちゃん

「分働きました」の文字列があるのに「&」で、つながなくていいの?

ももねこ先生
ももねこ先生

それは、TEXT関数の「書式文字列の中に入れられる文字」と「入れられない文字」が違うからです。

  • [m]分働きました  → 書式の中に「分働きました」という文字列をそのまま入れられる
  • [h]時間[m]分  → できない(Excelが書式として解釈してしまう)

だから 時間と分を組み合わせるときは & が必要になる

🔍 なぜ [m]分働きました はOKなのか?

TEXT関数の書式では、

  • [m]特殊な書式記号(総分)
  • 分働きました → ただの文字列

つまり、[m]は数値として「分働きました」は文字としてExcelがこれを正しく区別してるからなのです。

✨ まとめ

やりたいこと書式だけでOK?理由
[m]分働きました◎ 可能[m] と文字列が明確に区別できる
[h]時間[m]分✖ 不可能Excelが複合書式として解釈できない
○時間○分→ & が必要時間と分を別々に取り出す必要がある

ももねこ

運営者プロフィール

パソコンインストラクターの経験を生かして、シニアの方や初心者の方に、WordやExcelの「できた!」を届けるために活動しています。

ももねこをフォローする