文字列関数の練習問題10問|解答・解説付き(LEFT・MID・FIND・SUBSTITUTE/練習用ファイル無料)

文字列関数の練習問題10問|解答・解説付き(LEFT・MID・FIND・SUBSTITUTE/練習用ファイル無料)

文字列関数の練習問題を10問用意しました。LEFT・RIGHT・MID での取り出し、FIND と組み合わせて「@」の前後を取り出す、LEN・SUBSTITUTE・TRIM、& でつなげる、TEXT でカンマ付きにするまで、文字の整理でよく使う形を順番に練習できます。

問題と解答が入った練習用のファイルを無料でダウンロードできます。答えはすべて実際の Excel で計算して確かめています。

練習用Excelファイル(無料ダウンロード)
「問題」シート(黄色のセルに式を入れる)と「解答」シート(答えの式入り)の2シートです。入力の文字を書き換えて何度でも練習できます。
Excelファイル(.xlsx)/登録不要/数式・練習データ入り
目次

練習用ファイルの使い方

  1. 練習用のファイルをダウンロードして開き、「問題」シートを表示します。
  2. 黄色のセル(E4:E13)に、問題に合う式を入れます。C列(入力1)・D列(入力2)の文字を使います。右の列にヒントがあります。
  3. 「解答」シートで、答えと式を確かめます。
エクセルの文字列関数練習問題の問題シート
エクセルの文字列関数練習問題の問題シート

問題の一覧

No.問題入力1入力2
1商品コード(C列)の左から3文字を取り出してください。A01-1055
2商品コードの右から4文字を取り出してください。A01-1055
3電話番号(C列)の5文字目から4文字を取り出してください。090-1234-5678
4メールアドレス(C列)の「@」より前を取り出してください。yamada@example.com
5メールアドレスの「@」より後ろを取り出してください。yamada@example.com
6住所(C列)の文字数を数えてください。東京都千代田区丸の内
7電話番号(C列)のハイフンを消してください。090-1234-5678
8氏名(C列)の前後の余分なスペースを消し、間のスペースを1つにしてください。山田 太郎
9姓(C列)と名(D列)を、間に半角スペースを入れてつなげてください。山田太郎
10金額(C列)を「1,234,567円」のようにカンマと「円」を付けた文字にしてください。1234567

問題8の入力1は、前後と間に余分なスペースが入った「 山田 太郎 」です。まずは自分で解いてみてから、下の解答と解説を見てください。

問題1の解答と解説

問題:商品コード(C列)の左から3文字を取り出してください。

=LEFT(C4,3)

答え:A01 ヒント:LEFT(文字列,文字数) で左から取り出します。

LEFT(C4,3) で「A01-1055」の左から3文字の「A01」です(LEFT関数)。

問題2の解答と解説

問題:商品コードの右から4文字を取り出してください。

=RIGHT(C5,4)

答え:1055 ヒント:RIGHT(文字列,文字数) で右から取り出します。

RIGHT(C5,4) で右から4文字の「1055」です(RIGHT関数)。

問題3の解答と解説

問題:電話番号(C列)の5文字目から4文字を取り出してください。

=MID(C6,5,4)

答え:1234 ヒント:MID(文字列,開始位置,文字数) の順です。

「090-1234-5678」の5文字目は「1」で、そこから4文字が「1234」です。ハイフンも1文字として数えます(MID関数)。

問題4の解答と解説

問題:メールアドレス(C列)の「@」より前を取り出してください。

=LEFT(C7,FIND("@",C7)-1)

答え:yamada ヒント:FIND で「@」の位置を調べ、1を引いた文字数を LEFT で取り出します。

FIND(“@”,C7) は「@」の位置(7)を返します。その1つ手前までの6文字を LEFT で取り出すと「yamada」です。試したところ、-1 を付けないと「yamada@」と @ まで入りました。また、@ が無い文字に使うと FIND が見つけられず #VALUE! になります(FIND関数)。

エクセルでLEFTとFINDを組み合わせて@より前を取り出した式と結果
エクセルでLEFTとFINDを組み合わせて@より前を取り出した式と結果

問題5の解答と解説

問題:メールアドレスの「@」より後ろを取り出してください。

=MID(C8,FIND("@",C8)+1,LEN(C8))

答え:example.com ヒント:「@」の次の位置から、残りを MID で取り出します。文字数は LEN で十分な大きさにします。

「@」の位置+1(8文字目)から取り出します。文字数は残りが全部入るように LEN(C8) にしています。結果は「example.com」です。

問題6の解答と解説

問題:住所(C列)の文字数を数えてください。

=LEN(C9)

答え:10 ヒント:LEN は全角も半角も1文字として数えます。

「東京都千代田区丸の内」は10文字です。LEN は全角も半角も1文字と数えます。試したところ、バイト数を数える LENB では 20 になりました(LEN・LENB関数)。

問題7の解答と解説

問題:電話番号(C列)のハイフンを消してください。

=SUBSTITUTE(C10,"-","")

答え:09012345678 ヒント:SUBSTITUTE(文字列,前の文字,後の文字) で、”” に置き換えると消えます。

ハイフン(-)を “” (何も無い文字)に置き換えると消えて「09012345678」になります。試したところ、全角のハイフン(-)は半角の “-” では消えませんでした(SUBSTITUTE関数)。

問題8の解答と解説

問題:氏名(C列)の前後の余分なスペースを消し、間のスペースを1つにしてください。

=TRIM(C11)

答え:山田 太郎 ヒント:TRIM は前後のスペースを消し、間に続いたスペースを1つにします。

前後のスペースが消え、間の3つのスペースが1つになって「山田 太郎」になりました(TRIM関数)。

問題9の解答と解説

問題:姓(C列)と名(D列)を、間に半角スペースを入れてつなげてください。

=C12&" "&D12

答え:山田 太郎 ヒント:& で文字をつなげます。スペースも ” ” で囲んで入れます。

C12&” “&D12 で「山田 太郎」です。試したところ、=C12&D12 とスペースを入れないと「山田太郎」になりました(姓と名を結合する方法)。

問題10の解答と解説

問題:金額(C列)を「1,234,567円」のようにカンマと「円」を付けた文字にしてください。

=TEXT(C13,"#,##0")&"円"

答え:1,234,567円 ヒント:TEXT(数値,”#,##0″) でカンマ付きの文字にしてから「円」をつなげます。

TEXT(C13,”#,##0″) で「1,234,567」というカンマ付きの文字にしてから「円」をつなげます。試したところ、=C13&”円” だけではカンマが付かず「1234567円」になりました(TEXT関数)。

エクセルでTEXT関数で金額にカンマと円を付けた式と結果
エクセルでTEXT関数で金額にカンマと円を付けた式と結果

よくある間違い

エクセルの文字列関数でよくある間違いの例
エクセルの文字列関数でよくある間違いの例

実際に試した、よくある間違いの例です。上(問題4)は -1 を付けなかったため「yamada@」になり、下(問題9)はスペースを入れなかったため「山田太郎」になりました。

症状考えられる原因対処
区切りの文字まで入ってしまうFIND の位置から 1 を引いていないLEFT(C7,FIND(“@”,C7)-1) にする(問題4)。
#VALUE! になる探す文字(@ など)が無いIFERROR で表示を決める(IFERROR関数)。
ハイフンが消えない全角と半角のハイフンが混ざっている全角の “-” も SUBSTITUTE で消す(問題7)。
カンマが付かない& で数値をそのままつなげたTEXT(数値,”#,##0″) で文字にしてからつなげる(問題10)。

よくある質問

「@」より前を、もっと簡単に取り出せますか?

Microsoft 365 なら TEXTBEFORE 関数が使えます。=TEXTBEFORE(C7,"@") で「yamada」、=TEXTAFTER(C8,"@") で「example.com」になります(TEXTBEFORE・TEXTAFTER関数)。

たくさんの文字をまとめてつなげたいときは?

TEXTJOIN 関数を使うと、範囲の文字を区切り文字を入れてまとめてつなげられます(文字列を結合する方法)。

ほかの関数の練習問題もありますか?

IF関数・COUNTIF・SUMIF関数・日付関数・VLOOKUP関数・XLOOKUP関数の練習問題があります。

練習用Excelファイル(無料ダウンロード)
10問の問題と解答が入った練習用のファイルです。
Excelファイル(.xlsx)/登録不要/数式・練習データ入り

あわせて読みたい:文字列関数の関連記事

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次