文字列置換ならSUBSTITUTEとREPLACE関数[検索型か範囲型で使い分け]

今回の記事では

文字列の一部の文字を置き換えてくれる関数って無いの?

間違っている文字を自動的に修正してくれる関数があったら便利なのに

置換関数はどんな場面で使ったら良いの分からない

具体的な活用方法って何か無いの?

こういった疑問に答えます

✔文字列を置換する関数を活用する方法のテーマ
①文字列の置換ならSUBSTITUTEとREPLACE関数を使うのがベストです
②2つの関数の具体的な使い方は「検索型か範囲型」で活用するのが正解

この記事を書いているのはOfficeを約20年間活用しながら
ITを活用したエステの経営マネジメントしている私の経験を基に
「文字列を置換する関数を活用する方法のテーマ」に関して実体験に基づいて解説しています

今回の内容を一緒にやりたい場合は▼のファイルをダウンロードして下さい

文字列の置換ならSUBSTITUTEとREPLACE関数を使うのがベストです

文字列の置換はREPLACEとSUBSTITUTE関数を使えばサクッと出来ます

なぜなら、2つの関数は置換機能に特化した関数だからです

それでは2つの関数の具体的な使い方について解説していきましょう

今回は「誤字の修正を関数を使って行う」やり方を例に使い方を覚えていきましょう

SUBSTITUTE(サブスティチュート)関数を使った方法

まずは、次のような誤字を関数を使って修正してみましょう

こんな風に誤字の一部を正しい文字に修正するには、「SUBSTITUTE関数を使うのが一番早い」です

実際に置換機能を使った修正方法を見ていきましょう

ちなみに置換(ちかん)とはそのままの意味で「置き換える」事を言います

つまり、誤字の一部の文字を正しい文字に置き換えることで文字の修正をしているという訳です

SUBSTITUTE関数はこんな風に「検索した文字を置換したい文字に置き換えて」くれます

基本的な使い方は「=SUBSTITUTE(文字列,検索文字列,置換文字列,[置換対象])」です

ただ、「置換対象」は特に設定する必要はありません

今回設定した内容は「=SUBSTITUTE(A5,B5,C5)」なのでコレを日本語にしてみましょう

「=SUBSTITUTE(A5のセルの文字列を対象に,B5セルの文字列を検索して,C5セルの文字列に置換してね)」という意味です

そのため「震源餅」の「震源」という文字を見つけたら「信玄」に置き換えてくれた

という訳です

設定内容はこれだけなのですごく簡単ですよね

あとは、オートフィルで関数をコピーしてあげれば、サクッと置換が出来ちゃいます

ポイントは、検索する文字と置換したい文字を設定することなので特に問題ないと思います

ただ、今回の方法は他のセルに検索文字と置換文字を設定しています

実際は、式の中にそれらの文字を直接設定するやり方もあるので合わせて見てみましょう

直接入力するとこんな感じです

「検索文字と置換文字を”(ダブルクォーテーション)で囲む」だけで同じことが出来ますね

2つの方法は基本的に同じですが、検索文字と置換文字を頻繁に変更する必要がある時は、圧倒時にセルを参照する方が早いので目的に合わせてどちらかの方法を使ってみましょう

REPLACE(リプレイス)関数を使った方法

次は、REPLACE関数を使った置換方法について見てみましょう

SUBSTITUTE関数と同じ内容で同じことをしてみましょう

こんな風にREPLACE関数を使ったほ方が若干設定が複雑になります

REPLACE関数の基本的な設定方法は「=REPLACE(文字列,開始位置,文字数,置換文字列)」です

今回の「=REPLACE(A5,B5,C5,D5)」を日本語にすると「=REPLACE(A5セルの文字列を,B5セルの開始位置(1文字目)~,C5セルの文字数(2文字)分,D5セルの文字列に置換してね)」という意味になります

文字だけだと分かりづらいので動きを図解にしてみましょう

こんな風に「開始位置と置き換える文字数」を指定するのが、REPLACE関数の特徴です

今回もう一つ注目ポイントがあります

それは「文字の削除」です

こんな風に「天ぷらそばん」を「天ぷらそば」に修正するには「ん」を削除したいですよね

開始位置と文字数の設定は同じですが、セル参照をする場合は「置換文字は何も入力しない」ことが大切です

理屈は「ん」の文字を「空白に置換する」という意味になり、「空白=削除」と同じ扱いになります

Excelは基本的な仕組みとしてこのルールに従うので覚えておくと意外と便利なので頭の片隅に置いておいて下さい

では、SUBSTITUTE関数と同じようにセル参照ではなく直接設定するやり方も見ておきましょう

さっきの「天ぷらそば」の修正を例にすると置換文字は「””」とすると文字を削除することができます

その他の設定は、数字を入力しているだけなので直接設定をする場合は、REPLACE関数の方が簡単ですね

2つの関数は似ていますが、分かりすさを重視するか位置や文字数などの設定を重視するかで使い分けると良いと思います

繰り返しになりますが、文字列の置換はSUBSTITUTEとREPLACE関数を使えばサクッと出来ます

2つの関数の具体的な使い方は「検索型か範囲型」で活用するのが正解

2つの関数は「検索型か範囲型」のどちらで置換するか考えると使い分け方がハッキリします

なぜなら、師弟の文字を置換するか師弟範囲の文字を任意の文字に置換するかでやれることが変わるからです

今回は「共通文字」と「サラリーマン川柳」の穴埋め問題の作り方を例に2つの関数の使い分けについて見てみましょう

SUBSTITUTE関数で共通文字の穴埋めクイズを作る

「共通文字の穴埋め問題」とは共通の文字を穴埋めにして共通する文字は何でしょうか?

というクイズ問題のことです

例で言うと答えは「そば」ですね

工夫次第でExcelでも面白い穴埋めクイズを作ることができるんですよ

では実際にどんな設定をしたのか見てみましょう

設定内容は同じですが、置換文字に「□」を設定しています

SUBSTITUTE関数は検索している文字を対象の文字列から見つけ出してくれます

検索文字がどこにあっても見つけてくれるので「そば」とう文字の位置や文字数を設定しなくて済みますね

検索したら置換してくれる

この機能を生かして「□(数はいくつでも大丈夫)」にしてねということができるので

「バラバラの位置にある決まった文字」を置換したい時はSUBSTITUTE関数を使うのが一番だということです

簡単な設定で面倒な虫食い問題を作ることができるので、同じようなケースがあったら、チャレンジしてみましょう

REPLACE関数で共通文字の穴埋めクイズを作る

次は、サラリーマン川柳をREPLACE関数を使って穴埋め問題を作ってみましょう

設定内容はこんな感じです

無理に関数を使うまでもない気もしますが、「置換する文字が決まっていない・置換する置換したい範囲が決まっていない」などの時はREPLACE関数を使う方がスムースです

SUBSTITUTE関数は、検索した文字列で同じ文字を対象にするときには使いやすいですが、任意の文字数分置換したい時はREPLACE関数の方が融通が効きますね

こんな風に目的によって置換関数も使い分けることが重要です

繰り返しになりますが、2つの関数は「検索型か範囲型」のどちらで置換するか考えると使い分け方がハッキリします

よくある質問:文字列の置換は関数じゃなきゃいけないの?

文字列の置換だけする場合は、関数ではなく置換機能を使う方が手っ取り早く済むケースがあります

なぜなら、置換機能を使えばシート全体などを対象にして目的の文字を置換することができるからです

では、置換機能の使い方について見てみましょう

まずは置換したい範囲を選択します

「ホームタブ」の「編集グループにある検索と選択」をクリック

「置換」をクリック

検索する文字列に「そば」と入力

検索後の文字列に「□□」と入力

「全てを置換」ボタンをクリック

指定された範囲の該当する文字列が置換後の文字に変換されています

この方法でも置換は出来るので無理に関数を使う必要は無いですね

但し、置換機能も正しく使わないと、シート全体やブック全体を一気に置換してしまって逆に面倒なことになることもあります

どんな機能にも言えることですが、使う目的と用途に合わせて使い分けることが大切です

シート単位で一気に置換したい場合などは、置換機能を使った方が手っ取り早いので使い分けてみましょう

文字列の置換だけする場合は、関数ではなく置換機能を使う方が手っ取り早く済むケースがあります

オススメのExcel関数の解説書 5選

関数を本で学ぶ時は次に上げるものがオススメです

本を購入をオススメしている理由と各本の紹介に関して、下記の記事で詳しく解説しているので合わせて読んでみてください

コメントを残す

メールアドレスが公開されることはありません。