教えて!HELPDESK      Excel     Word      Outlook      Power Point      Windows

 

 

Excel 関数:SUBSTITUTEとREPLACEの違い

 

 

 

 

 


 

 

 

SUBSTITUTEとREPLACEはどちらも任意の文字を特定文字で置換できますが、次のような違いがあります。

 

SUBSITUTE

REPLACE

= SUBSTITUTE(文字列,検索文字,置換文字,置換対象)

指定した文字列置換文字に変える。

◆違い◆

  • 検索文字を指定できる

  • 同じ検索文字が複数ある場合、何番目に出現する文字か指定できる(置換対象)

  • 特定の1語(検索文字)を、置換文字に変更するだけなので、○文字分ということはできない(文字の取り出しには向かない)

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

開始位置から○字数を、置換文字に変える

◆違い◆

  • 検索文字は指定しない開始位置から字数を指定

  • 開始位置はFIND関数(検索文字の位置を返す)などで指定する

  • 開始位置から○文字分を置換文字に変える

  • 任意の文字数分を置換できるので、文字の取り出しが可能

関連:Excel2010-2016:REPLACE関数の使い方

 

例【犬との生活】 → 【犬との生活】に置換する(SUBSTITUTE関数が適当)

= SUBSTITUTE(A1,"","",2 ★ 2番目に出現する「犬」を「猫」に変える

あえてREPLACEを使うなら…

= REPLACE(A1,3,1,"")   ★ 3文字目から1字分「猫」に変える

※注:実際には開始位置は数字では指定せずFIND関数で指定します。(ここでは2回目の犬の位置を返します)

= REPLACE(A1,FIND("犬",A1,FIND("犬",A1)+1),1,"")

 

 

例  2つ目のハイフンの後の数字を抜き出す(REPLACE関数が適当)

phone-red-110  →  110

phone-blue-254 → 254

phone-black-65 → 65

 

1文字目から2つ目のハイフンの位置までを、削除(空白で置換)する

 

= REPLACE(A1,1,FIND("-",A1,FIND("-",A1)+1),"")

 

 

 

 

 

教えて!HELPDESK      Excel     Word      Outlook      Power Point      Windows