-
Home »
-
エクセル関数一覧表 »
-
Excel関数の目次 »
-
文字を置き換える関数(SUBSTITUTE関数、REPLACE関数)の使い方
- 置換対象を指定した場合、文字列中の置換対象番目の検索文字列だけが置き換えられます。
省略した場合は、文字列中のすべての検索文字列が置き換えの対象となります。
- 指定した文字列を削除することができます。
- 文字の位置を指定して、文字をほかの文字に置き換えるときは、REPLACE 関数を使用します。
【問題1】下の表の 株式会社 を (株) に置換しなさい。 [問題1の解答例]
-
|
B |
C |
2 |
株式会社西芝工業 |
(株) 西芝工業 |
3 |
西芝商事株式会社 |
西芝商事(株) |
【問題2】下の表の 「株式会社」を削除しなさい。 [問題2の解答例]
-
|
B |
C |
2 |
株式会社西芝工業 |
西芝工業 |
3 |
西芝商事株式会社 |
西芝商事 |
【問題3】B2セルに文字列が入力されています。
C列に表示されているように文字(記号)を置き換えなさい。
C2セルは × を □ に置換します。
C3セルは 2つ目の×を □に置換します。
C4セルは 1つ目の×を □に置換し、2つ目の×を ○に置換します。 [問題3の解答例]
-
|
B |
C |
2 |
○×△○×△ |
○□△○□△ |
3 |
|
○×△○□△ |
4 |
|
○□△○○△ |
【問題4】B2:B3に記号が入力されています。○の数をカウントしなさい。 [問題4の解答例]
-
|
B |
C |
2 |
○×△○○△ |
3 |
3 |
○×△×△○ |
2 |
4 |
×○×△×△ |
1 |
【問題5】B2セルにセル内改行された文字列があります。改行を削除しなさい。 [問題5の解答例]
- 下の表をExcelへコピペするとB2セルが B2とB3セルに分割されるかもしれません。
その時は、下の方を利用してください。
|
B |
C |
2 |
鹿児島市
山下町 |
鹿児島市山下町 |
4 |
="鹿児島市"&CHAR(10)&”山下町” |
鹿児島市山下町 |
- 手入力でセル内改行は 鹿児島市 [Alt]+[Enter] 山下町 と入力します。
- 改行されないときは、セルの配置を [ホーム]タブの配置グループの[折り返して全体を表示する]をオンにする必要があります。
【問題1の解答例】
- SUBSTITUTE関数を使って、文字列を置換します。
-
|
B |
C |
2 |
株式会社西芝工業 |
=SUBSTITUTE(B2,"株式会社","(株)") |
3 |
西芝商事株式会社 |
=SUBSTITUTE(B3,"株式会社","(株)") |
- (注) 同一セルで文字列を置き換えたい場合には、置換機能を使います。
[ホーム]タブの編集グループの[検索と選択]→[置換]を利用します。ショートカットキーは [Ctrl]+[H] です。
詳細は 置換の使い方 をご覧ください。
【問題2の解答例】
- SUBSTITUTE関数を使って、文字列を削除します。
- SUBSTITUTE関数の引数の置換文字列に "" (ダブルクォーテーションを2個)を指定します。
"" は空白文字列とか文字数0の文字列と呼びます。
|
B |
C |
2 |
株式会社西芝工業 |
=SUBSTITUTE(B2,"株式会社","") |
3 |
西芝商事株式会社 |
=SUBSTITUTE(B3,"株式会社","") |
【問題3の解答例】
- C2セルはすべての ×を□に置換しますので、構文 =SUBSTITUTE(文字列,検索文字列,置換文字列,[置換対象]) の[置換対象]を省略します。
C3セルは 2つ目の×を □に置換しますので、=SUBSTITUTE(B2,"×","□",2) と[置換対象]を
2 とします。
C4セルは ×を□に置換し、さらに □の2つ目を○に置換します。
|
B |
C |
2 |
○×△○×△ |
=SUBSTITUTE(B2,"×","□") |
3 |
|
=SUBSTITUTE(B2,"×","□",2) |
4 |
|
=SUBSTITUTE(SUBSTITUTE(B2,"×","□"),"□","○",2) |
【問題4の解答例】
- 対象文字 ○ を空白に置き換えて(取り除いて)、文字列の長さを比較すれば、対象文字の数を求めることができます。
|
B |
C |
2 |
○×△○○△ |
=LEN(B2)-LEN(SUBSTITUTE(B2,"○","")) |
3 |
○×△×△○ |
=LEN(B3)-LEN(SUBSTITUTE(B3,"○","")) |
4 |
×○×△×△ |
=LEN(B4)-LEN(SUBSTITUTE(B4,"○","")) |
【問題5の解答例】
- 数式は =SUBSTITUTE(B2,CHAR(10),"") とします。
- または、=CLEAN(B2) とすることもできます。
- 置き換える文字の位置が決まっている場合に使用できます。
【問題6】B列の文字や記号をC列に変換しなさい。 [問題6の解答例]
-
|
B |
C |
2 |
いろはにほへと |
はにほへと |
3 |
いろはにほへと |
いろちほへと |
4 |
○□△○□△○□ |
○□△×□ |
|
いろはにほへと |
あいうえおにほへと |
【問題7】下表にように、REPLACE関数を使ってセル内に簡易グラフを作成しなさい。 [問題7の解答例]
-
|
B |
C |
D |
2 |
名前 |
国語 |
|
3 |
名前1 |
50 |
|||||||||||||||||||||||||||||||||||||||||||||||||| |
4 |
名前2 |
60 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |
5 |
名前3 |
70 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |
6 |
名前4 |
10 |
|||||||||| |
【問題6の解答例】
- C2セルはB2セルの文字の1番目から2つが消えています。よって、=REPLACE(B3,1,2,"") としました。
いろはにほへと → はにほへと
- C3セルはB3セルの3番目と4番目の2文字が ち に置き換わっています。=REPLACE(B4,3,2,"ち") としました。
いろはにほへと → いろちほへと
- C4セルはB4セルの4番目の文字から7番目の文字まで4個が × に置き換わっていますので、=REPLACE(B5,4,4,"×") としました。
○□△○□△○□ → ○□△×□
- C5セルはB5セルの1番目から3文字が あいうえお に置き換わっていますので、=REPLACE(B5,1,3,"あいうえお") としました。
いろはにほへと → あいうえおにほへと
-
|
B |
C |
2 |
いろはにほへと |
=REPLACE(B2,1,2,"") |
3 |
いろはにほへと |
=REPLACE(B3,3,2,"ち") |
4 |
○□△○□△○□ |
=REPLACE(B4,4,4,"×") |
5 |
いろはにほへと |
=REPLACE(B5,1,3,"あいうえお") |
【問題7の解答例】
- REPT("|",100) で"|"縦棒を100本並べて、この縦棒の後ろを空白に置換してグラフのようにします。
数式は =REPLACE(REPT("|",100),C3+1,100-C3," ") としました。
- 縦棒100本は5,6行目の数式のように実際に入力してもOKです。
数式は =REPLACE("||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||",
C5+1,100-C6," ")
となります。
- しかし、実用的には下図のように =REPT("|",C3) の方がスマートですね。
- 半角文字(1バイト)の置換の例はわかりやすいのですが、全角文字(2バイト)が対象になるとちょっとわかりにくくなります。
- C2:C4セルの数式は すべて =REPLACEB(B2,3,3,"X") としています。
C2セルは B2セルの ABCDEF が ABXF に変わっているので、3文字目から3バイトの文字が X に変わっています。
C3セルは あいCDEF → あXDEF に変わっているので、3バイト目から3バイト分の文字(5バイト目まで)が X に変わっています。
C4セルは あいうえおか → あX えおか に変わっているので、3バイト目から3バイト分の文字(5バイト目まで)が X に変わっています。
ただし、 X の後ろに半角のスペースが入っています。
- C5セルは あいうえおか → あXえおか に変わっているので、3バイト目から4バイト分の文字(6バイト目まで)が X に変わっています。
スポンサードリンク
よねさんのWordとExcelの小部屋 »
エクセル関数一覧表 »
文字を置き換える関数(SUBSTITUTE関数、REPLACE関数)の使い方
PageViewCounter
Since2006/2/27