Excel

特定の文字列を別の文字列に置換する・入れ替えるSUBSTITUTE関数|Excel関数

 

Excelには文字列を置換するための関数として、SUBSTITUTE(サブスティチュート)関数とREPLACE(リプレイス)関数が用意されています。

このうち、SUBSTITUTE関数は、特定の文字列を別の文字列に置き換える関数です。

Excel機能置換[Ctrl]+[H])とそっくりの部分がある一方で、SUBSTITUTE関数でしかできないこともあります)

 

この記事では、特定の文字列を別の文字列に置き換える・入れ替えるSUBSTITUTE関数をピックアップします。

 

 

SUBSTITUTE関数の書式

SUBSTITUTE関数の引数(ひきすう)は、文字列検索文字列置換文字列置換対象の4つです。
何番目の文字列を置き換えるかを指定できる置換対象省略することができます。

 

SUBSTITUTE( 文字列,検索文字列,置換文字列[,置換対象]  )

文字列 置換対象の文字列が含まれるセルを指定する。
検索文字列 置き換える元の文字列を指定する。
置換文字列 置き換え後の文字列を指定する。
置換対象 何番目に出てくる(検索)文字列を置き換えるかを数値で指定する。
省略した場合には、すべての(検索)文字列が置き換えられる。

 

「部」を「戦略部」に置き換える

B2セル~B4セルに入力されている「」を「戦略部」に置き換えるには、
C2セルに、=SUBSTITUTE(B2,"部","戦略部")と入力し、C3セル、C4セルに式をコピーします。

SUBSTITUTE関数の例

 

検索文字列置換文字列をセル参照ではなく、式の中で指定するとき""(ダブルクォーテーション)で囲むことを忘れないようにしてください。

 

 

1番目に現れる文字列だけを置換する

SUBSTITUTE関数の第4引数[置換対象]に1を指定すると、1番目に現れる検索文字列だけを置き換えることができます。

 

1つ目の「総務」だけを「戦略」に置き換える

B2セル~B4セルに入力されている1つ目の「総務」を「戦略」に置き換えるには、
C2セルに、=SUBSTITUTE(B2,"総務","戦略",1)と入力し、C3セル、C4セルに式をコピーします。

置換対象1の例1

 

1つ目の「A」だけを「M」に置き換える

B2セル~B4セルに入力されている1つ目の「A」を「M」に置き換えるには、
C2セルに、=SUBSTITUTE(B2,"A","M",1)と入力し、C3セル、C4セルに式をコピーします。

置換対象1の例2

 

 

2番目に現れる文字列だけを置換する

SUBSTITUTE関数の第4引数[置換対象]に2を指定すると、2番目に現れる検索文字列だけを置き換えることができます。

 

2つ目の「総務」だけを「企画」に置き換える

B2セル~B4セルに入力されている2つ目の「総務」を「企画」に置き換えるには、
C2セルに、=SUBSTITUTE(B2,"総務","企画",2)と入力し、C3セル、C4セルに式をコピーします。

置換対象2の例1

 

2つ目の「A」だけを「M」に置き換える

B2セル~B4セルに入力されている2つ目の「A」を「M」に置き換えるには、
C2セルに、=SUBSTITUTE(B2,"A","M",2)と入力し、C3セル、C4セルに式をコピーします。

置換対象2の例2

 

 

SUBSTITUTE関数をネストして2つ以上の文字列を置換

=SUBSTITUTE(SUBSTITUTE(B2,"A","M"),"B","P")というような形で、
SUBSTITUTE関数を「ネスト」(入れ子)にすると、2つの文字列を同時に置換できます。

 

この式では、「 A → M 」「 B → P 」に同時に置き換えることができます。

さらにSUBSTITUTE関数をネストすれば、
3つの文字列を同時に置換することもできます。

SUBSTITUTE関数ネストの例

 

 

まとめ

Excelで文字列をまとめて修正するときには、置換[Ctrl]+[H])機能をよく使います。

ですが、元の文字列を残しておきたいときや、文字列の中で置換したい場合と置換したくない場合が混在するとき、置換したい文字列が複数あるときには、SUBSTITUTE関数を使って置換する方が効率的です。

状況に応じて使い分けてください。

 

最後までお読みいただきありがとうございました。

 

おすすめ記事

参考文献

-Excel
-

© 2021 まなびっと Powered by AFFINGER5