更新日:、 作成日:
エクセル REPLACE 関数:文字列を指定した位置から置換する
はじめに
エクセルの REPLACE 関数の使い方を紹介します。
REPLACE 関数は、文字列を指定した位置から文字数だけ置換します。
=REPLACE("ABCDE",2,3,"_") のようにして、2 文字目から 3 文字を A_E に置換できます。
=REPLACE("ABCDE",2,LEN("ABCDE"),"_") のようにして、2 文字目から最後まで A_ のように置換できます。
=REPLACE("ABCDE",2,0,"_") のようにして、2 文字目に A_BCDE のように挿入できます。
REPLACE 関数の引数
REPLACE(置換対象, 開始位置, 文字数, 置換ワード)
置換対象の開始位置から文字数分の文字を置換ワードに置換します。
引数「置換対象」 | 置換対象の文字列を指定します。 | スピル化 |
引数「開始位置」 | 置換を開始する位置を指定します。先頭の文字が 1 です。 | スピル化 |
引数「文字数」 | 置換する文字数を指定します。 | スピル化 |
引数「置換ワード」 | 置換する文字列を指定します。 | スピル化 |
スピル化:セルの範囲や配列を指定すると結果が「スピル」します。
使い方
REPLACE 関数の使い方を紹介します。
2 文字目から 3 文字を置換する
セル「B3」の 2 文字目から 3 文字を _ に置換します。
開始位置と文字数を指定して置換する
12345 の開始位置から指定した文字数を置換します。
文字数を 0 にすると開始位置に挿入できます。
最後の文字まで置換する
12345 の開始位置から最後まで置換します。「LEN 関数」を使用して文字数を取得できます。
開始位置に文字を挿入する
12345 の開始位置に _ を挿入します。引数「文字数」に 0 を入力して挿入できます。
スポンサーリンク
高度な使い方
REPLACE 関数と他の関数を組み合わせた使い方などを紹介します。
後ろから置換する
引数「開始位置」に 文字数 - 開始位置 + 1 のように入力して、開始位置を後ろから指定できます。「LEN 関数」を使用して文字数を取得できます。
後ろから何文字目まで置換する
引数「文字数」に 文字数 - 終了位置 - 開始位置 + 2 のように入力して、後ろから何文字目の終了位置を指定できます。「LEN 関数」を使用して文字数を取得できます。
特定の文字より前を置換する
「FIND 関数」を使用して、特定の文字の位置を取得できます。引数「文字数」に 検索位置 - 1 のように入力して、特定の文字の前を置換できます。
特定の文字より後ろを置換する
「FIND 関数」を使用して、特定の文字の位置を取得できます。引数「開始位置」に 検索位置 + 1 のように入力し、引数「文字数」に 文字数 のように入力して、特定の文字の後ろを置換できます。「LEN 関数」を使用して文字数を取得できます。
特定の文字の範囲を置換する
12[45]78 から [] で囲まれた 45 を置換します。
「FIND 関数」を使用して、特定の文字の位置を取得できます。引数「開始位置」に 開始検索位置 + 1 を入力し、引数「文字数」に 終了検索位置 - 開始検索位置 - 1 を入力して、特定の文字で囲まれた範囲を置換できます。
12_45_78 のように同じ文字で囲まれているときは、引数「文字数」に 2 番目の検索位置 - 開始検索位置 - 1 を入力して置換できます。
「LET 関数」を使用できるバージョンなら次のように入力できます。
終了,FIND("_",B3,開始+1),
REPLACE(B3,開始+1,終了-開始-1,"範囲"))
解説
検索ワードを置換するには「SUBSTITUTE 関数」を使用します。
引数「開始位置」が 2 で引数「文字数」が 1 なら、引数「置換対象」の 2 文字目から 1 文字を置換します。ABC → A_C
引数「開始位置」が引数「置換対象」の文字数を超えるときは、最後の文字の後ろに引数「置換ワード」を挿入します。
引数「開始位置」に 0 以下や数値以外のときはエラー #VALUE! になります。
引数「文字数」が 0 なら、引数「開始位置」の位置に引数「置換ワード」を挿入します。
引数「文字数」が引数「置換対象」の文字数を超えるときは、最後の文字まで置換します。
引数「文字数」がマイナスの値や数値以外のときはエラー #VALUE! になります。
セルの書式設定から表示形式を指定しているときは、それを適用する前の値を置換します。日付や時間など表示形式を適用した状態から置換するには「TEXT 関数」を使用します。
スポンサーリンク