【Excel】SUBSTITUTEを使って文字列を置換する方法を紹介【備忘録】

Excel
スポンサーリンク

今回はSUBSTITUTEを使って文字列を置換する方法を紹介します。

Excelの関数について不定期で投稿していますので、こちらも併せてご覧ください!

スポンサーリンク

SUBSTITUTEとは

SUBSTITUTE関数をざっくり説明すると、指定した文字列を別の文字列で置換することができる関数になります。Excelの機能でCtrlキーとFキーを同時に押すと「検索と置換」が出てくると思うんですが、あれの置換機能が数式で使えるような感じです。

SUBSTITUTEとは_1

以下の例では「私の飼っている犬は9歳です。」の「」の部分を「」に置換しています。

SUBSTITUTEとは_2

このようにSUBSTITUTE関数を使えば任意の文字列を置換することができるわけです。

スポンサーリンク

SUBSTITUTEの書き方

SUBSTITUTEは以下のように書きます。

=SUBSTITUTE(【1.検索元文字列】,【2.検索文字列】,【3.置換文字列】)

それぞれ各引数について、先程の例を用いながら説明していきます。

検索元文字列

ここに検索元の文字列を指定します。

先程の例ではA列に元になる文字列「私の飼っている犬は9歳です。」が入っているのでここにA1セルを指定する感じです。

SUBSTITUTEの書き方_検索元文字列_1

検索文字列

ここに検索したい文字列を指定します。

先程の例ではA1セル内の「」を別の文字に置換したいので「犬」を指定します。

SUBSTITUTEの書き方_検索文字列_1

置換文字列

ここに置換する文字列を指定します。

先程の例で言うと「」を「」で置換するので「猫」を指定すればOKです。

SUBSTITUTEの書き方_置換文字列_1
スポンサーリンク

SUBSTITUTEの使用例

SUBSTITUTEの使用例について紹介します。ほぼ備忘録のようなものですが、もし参考になれば幸いです。(役立ちそうなものあれば追記します)

1つのセル内で複数個所置換する

先程の例では「犬」の部分を「猫」に置換しただけでしたが、追加で「9歳」を「10歳」に置換&同一セル内で行う方法です。

1つのセル内で複数個所を置換するには、SUBSTITUTE関数をネストすればできます。

=SUBSTITUTE(SUBSTITUTE(A1,"犬","猫"),9,10)

動作イメージは以下の通りです。

  1. 内側のSUBSTITUTEを処理(「犬」「猫」に置換)
  2. 外側のSUBSTITUTEを処理(「9」「10」に置換)

注意点として、これはSUBSTITUTEに限った話ではないのですが、関数をネストしすぎると可読性が悪くなる為、なるべく複数セルに処理を分散させるようにするのがお勧めです

どうしても「単一セルで置換させたい」場合に、上記の方法を使用するようにしましょう。

まとめ

今回はSUBSTITUTEを使って文字列を置換する方法を紹介しました。

SUBSTITUTEを使う場合は、以下構文を覚えておきましょう。

=SUBSTITUTE(【1.検索元文字列】,【2.検索文字列】,【3.置換文字列】)

コメント

タイトルとURLをコピーしました