【Excel】エクセルのREPLACE関数で複数箇所を一度の置換する方法
エクセルのREPLACE関数で複数個所を一度の置換するのイメージは次のようなイメージです。
例:電話番号
置換前:012-3456-7890
置換後:XXX-3456-YYYY
1~3文字目をX、10~13文字目をY
REPLACE関数はREPLACE(文字列, 開始位置, 文字数, 置換文字列)
といった形のため
上記画像の置き換えのように1か所ずつの置換であれば、次の式で置き換えることができます。
=REPLACE(A2,1,3,C2):B2のセルでA2のセルの文字列の1文字目からの3文字をC2の文字列で置き換える
=REPLACE(A2,10,13,C3):B3のセルでA2のセルの文字列の10文字目からの4文字をC3の文字列で置き換える
REPLACE関数については、置き換えて文字列を返しているという所がポイントです。
つまり、置換した式自体を文字列として扱い再度REPLACE関数を使用して複数同時に置換します。
イメージとしてはREPLACE関数のREPLACE(文字列⇦ここにREPLACE関数を入れることで複数置換可能, 開始位置, 文字数, 置換文字列)です。
冒頭での
例:電話番号
置換前:012-3456-7890
置換後:XXX-3456-YYYY
のように置換するには
①=REPLACE(A2,1,3,C2):B2のセルでA2のセルの文字列の1文字目からの3文字をC2の文字列で置き換える
②=REPLACE(A2,10,13,C3):B3のセルでA2のセルの文字列の10文字目からの4文字をC3の文字列で置き換える
①のA2に②を代入します。A2⇒REPLACE(A2,10,13,C3)
=REPLACE(REPLACE(A2,10,13,C3),1,3,C2)
上記の画像のとおり、エクセルのREPLACE関数で複数箇所を一度に置換を確認できます。