【Excel】複数の文字を一括で置換する関数

この記事では、Excelで複数の文字列を一括置換する方法をご紹介します。SUBSTITUTE関数をネストさせる基本から、より高度なREGEXREPLACE関数(Excel 365限定)の活用まで解説します。さらに、複数範囲の同じ文字列を一括で処理する方法もご紹介しますので、ぜひお役立てください。

スポンサーリンク

複数の文字を一括で置換:SUBSTITUTE関数を使う方法

【Excel】複数の文字を一括で置換する関数

SUBSTITUTE関数を使って、複数の異なる文字列を一度に置換したい場合は、SUBSTITUTE関数を入れ子(ネスト)にして使用します。

例えば、セルA2の「ab-c-d!」という文字列に含まれる「」と「!」を、どちらも空の文字列(””)に置換したい場合、数式は以下のようになります。

例:=SUBSTITUTE(SUBSTITUTE(A2,"-",""),"!","")

この数式では、まず内側の SUBSTITUTE(A2,"-","") によって、セルA2の「-」が空の文字列に置換されたテキストが生成されます。次に、その結果が外側のSUBSTITUTE関数の「検索対象のテキスト」として渡され、そこから「!」が空の文字列に置換されるという仕組みです。

SUBSTITUTE関数の引数:(文字列, 検索文字列, 置換文字列, [置換対象])

スポンサーリンク

複数の文字を一括で置換:REGEXREPLACE関数を使う方法

はじめに、REGEXREPLACE関数は、Microsoft 365のExcelでのみ利用可能です。

Excel 2019、Excel 2016などには、REGEXREPLACE関数は搭載されていないため、SUBSTITUTE関数をネストする方法をご参照ください。

【Excel】複数の文字を一括で置換する関数

REGEXREPLACE関数は、正規表現を使って文字列を検索し、一致した部分を新しい文字列に置換します。

正規表現とは、あいまいな文字列を検索するための手法の 1 つで、メタキャラクタ(メタ文字)という記号を使って、文字列のパターンを表現します。

例えばセルA2の「ab-c-d!」という文字列に含まれる「」と「!」を、どちらも空の文字列(””)に置換したい場合、数式は以下のようになります。

例:=REGEXREPLACE(A2,"[-!]","")

このように、角かっこ [] の中に置換したい複数の文字をまとめて処理できるのが、REGEXREPLACE関数の特徴です。

REGEXREPLACE関数の引数:(文字列, 正規表現, 置換文字列)

スポンサーリンク

複数範囲の文字列を同時に置換:検索と置換を使う方法

【Excel】複数の文字を一括で置換する関数

複数範囲の同じ文字列を同時に置換したい場合、以下の手順で操作を行います。

  1. 置換対象のテキストが入力された範囲を選択します。
  2. キーボードの Ctrl + H (Macの場合は Command + Option + F)を押して、「検索と置換」を開きます。
  3. 検索」欄に、置換したい文字列を入力します(例:「-」)。
  4. 置換」欄に、置換後の文字列を入力します(例:削除したい場合は空欄にします)。
  5. すべて置換」をクリックします。
【Excel】複数の文字を一括で置換する関数

例えば、検索する文字列が「-」で、置換後の文字列を空欄にした場合、選択した範囲内の文字列は以下のように変わります。

  • a-b→ab
  • c-d-e→cde
タイトルとURLをコピーしました