REPLACE関数:文字列の中の指定位置から指定した文字数分を置き換える

REPLACE 関数は Excel で用意されている関数の一つで、対象の文字列の中で指定した開始位置から指定した文字数分の文字列を別の文字列に置き換えます。 REPLACE 関数では半角文字でも全角文字でも 1 文字は 1 文字としてカウントします。ここでは Excel における REPLACE 関数の使い方について解説します。

※ Excel の対応バージョン : 365 web 2021 2019 2016 2013 2010 2007

(Last modified: )

REPLACE関数の使い方

REPLACE 関数は引数に対象の文字列の中の開始位置(文字単位)から文字数分だけの文字列を別の文字列に置換します。

REPLACE(文字列,開始位置,文字数,置換文字列)

1 番目の引数に対象の文字列を指定します。対象の文字列の中で 2 番目の引数に指定した開始位置から、 3 番目の引数に指定した文字数分だけの文字列を、 4 番目の引数で指定した新しい文字列で置き換えます。開始位置を指定する場合は、先頭の文字が 1 、次の文字が 2 、というように指定します。

REPLACE関数の定義(1)

REPLACE 関数では全角文字も半角文字も同じように 1 つの文字は 1 文字とカウントします。

REPLACE関数の定義(2)

例えば 1 番目の引数に "ミカンブドウリンゴ" 、 2 番目の引数に 4 、 3 番目の引数に 3 、 4 番目の文字に "オレンジ" を指定した場合、結果として "ミカンオレンジリンゴ" が返されます。

=REPLACE("ミカンブドウリンゴ",4,3,"オレンジ")
--> ミカンオレンジリンゴ

1 番目の引数に "RedBlueGreen" 、 2 番目の引数に 4 、 3 番目の引数に 4 、 4 番目の引数に "White" を指定した場合、結果として "RedWhiteGreen" が返されます。

=REPLACE("RedBlueGreen",4,4,"White")
--> RedWhiteGreen

REPLACE関数を使って文字列を挿入する

REPLACE 関数は指定した文字列を別の文字列に置換するために使用するものですが、 REPLACE 関数の 3 番目の引数である文字数に 0 を指定すると、置き換える文字列がなくなるため指定した位置に置換文字列が挿入されることになります。

1 番目の引数に "RedGreen" 、 2 番目の引数に 4 、 3 番目の引数である文字数に 0 、 4 番目の引数に "Yellow" を指定してみます。

=REPLACE("RedGreen",4,0,"Yellow")
--> RedYellowGreen

文字数に 0 を指定していたので置換ではなく挿入されて結果として "RedYellowGreen" が返されました。なお挿入される位置は、 2 番目の引数で指定した開始位置が示す文字の直前になります。

REPLACE関数の使い方

それでは実際に REPLACE 関数を使ってみます。 Excel のシートに対象となる数値を次のように入力しました。

REPLACE関数の使い方(1)

置換後の新しい文字列を表示する D3 セルを選択し、次のように入力しました。 1 番目の引数として対象の文字列が入力されている C3 セル、 2 番目の引数に開始位置として 1 、 3 番目の引数に文字数として 7 、 4 番目の引数に置換文字列として "xxx-xxx" を指定しました。

=REPLACE(C3,1,7,"xxx-xxx")

REPLACE関数の使い方(2)

Enter キーを押すと、 D3 セルには次のように表示されます。

REPLACE関数の使い方(3)

同じように D4 セルから D7 セルに対しても同じように REPLACE 関数を入力すると次のように表示されました。

REPLACE関数の使い方(4)

-- --

Excel における REPLACE 関数の使い方について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。