【Excel】SUBSTITUTE関数を使って条件に該当する文字列を置換する方法

2025年版実務で役立つExcel新機能・新関数

2021年以降を中心にExcelに追加された機能・関数の中で特に実務に役立つものについて解説しています。基本的な使い方や他の機能・関数と組み合わせた応用テクニックも紹介しています。

コンサル流実務で役立つExcelテクニック

コンサルタントとして様々なプロジェクトに従事してきた著者が、実務において実際に活用したExcelのテクニックを紹介します。著者自身が「あれ?どうすればいいんだろう」と悩んだ部分を中心にピックアップしています。


Excelには、「Ctrl + H」で検索と置換ウィンドウを開くことで、特定の文字列を別の文字列に置換する機能があります。

一方で、この置換機能では、すべての文字列が対象となり、特定の条件を満たす文字列だけを置換することはできません。そこで役立つのがSUBSTITUTE関数です。SUBSTITUTE関数も文字列を別の文字列に置換する機能ですが、関数なので、別の関数と組み合わせることができます

SUBSTITUTE関数とは

SUBSTITUTE関数では、文字列に含まれる文字を別の文字に置換することができます。

関数役割
SUBSTITUTE(文字列,検索文字列,置換文字列)「文字列」の中で「検索文字列」があれば、「置換文字列」に変更する。

たとえば、以下のような番地のデータを「〇の〇の〇」という形式から「〇-〇-〇」に置換したい場合、セルC2に以下のように数式を入力します。検索文字列は「の」、置換文字列は「-」です。

=SUBSTITUTE(B2,”の”,”-“)

そうすると以下のように「3の5の3」が「3-5-3」になります。

セルC2の数式を下にコピーすれば、以下のようにすべての番地が「〇-〇-〇」に変わります。

ただし、このくらいのデータであれば、置換機能を用いても対応することができます。

SUBSTITUTE関数を使って条件に該当する文字列を置換する方法

では次に、SUBSTITUTE関数を使って少し複雑な条件の置換を行いたいと思います。

以下のような名簿があった場合を考えます。役職名の変更により、「営業部」の「主任」の社員の役職を「営業担当」に変更したいとします。この場合、「主任」を置換により「営業担当」に変えてしまうと、営業部以外の社員の役職名も変わってしまいます。そのため、ここはIFの条件式とSUBSTITUTE関数を使って置換を行いたいと思います。

まず、置換後の役職名を表示させる列を追加します。

セルD4に以下の数式を入力します。

=IF(B4=”営業部”,SUBSTITUTE(C4,”主任”,”営業担当”),C4)

数式役割
IF(B4=”営業部”セルB4が「営業部」の場合を条件とする。
SUBSTITUTE(C4,”主任”,”営業担当”)セルC4に「主任」という文字列があれば、「営業担当」に置換する。
,C4)セルB4が「営業部」でなければ、セルC4の値をそのまま表示する。

そうすると、表の1行目の社員「田中 紘一」は「営業部」かつ「主任」なので、役職名は「営業担当」に変わります。

セルC4の数式を下にコピーすれば、「営業部」かつ「主任」の条件を満たす社員の役職名は「営業担当」に変更されます。なお、「営業部」ではない「主任」の社員については変更されていません。

このようにSUBSTITUTE関数を使うことで、特定の条件で柔軟に置換を行うことができます。

2025年版実務で役立つExcel新機能・新関数

2021年以降を中心にExcelに追加された機能・関数の中で特に実務に役立つものについて解説しています。基本的な使い方や他の機能・関数と組み合わせた応用テクニックも紹介しています。

コンサル流実務で役立つExcelテクニック

コンサルタントとして様々なプロジェクトに従事してきた著者が、実務において実際に活用したExcelのテクニックを紹介します。著者自身が「あれ?どうすればいいんだろう」と悩んだ部分を中心にピックアップしています。


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

この記事を書いた人

Junyaと申します。本ブログではExcelなどビジネススキルを発信しています。
Youtubeで動画投稿もしていますので、是非フォローお願いします。

コメント

コメントする