エクセルバージョン
マイクロソフト365
本日は指定した位置から何文字や何バイトを指定して置換ができるREPLACE関数とREPLACEB関数について解説します。
文字列を指定して置換したい場合は下記で解説しています。
それではいってみましょう(*゚▽゚)ノ
Menu
REPLACE関数
・文字列の指定した位置から、文字数を指定して置換することができます。
・1文字を1としてカウントします。
構文
=REPLACE(文字列,開始位置,文字数,置換文字列)
引数
REPLACE | 引数 | 内容 |
第1引数(必須) | 文字列 | 置換前の対象となる文字列を指定。 |
第2引数(必須) | 開始位置 | 置換前の文字から、置換したい文字の開始位置を指定。(先頭から) |
第3引数(必須) | 文字数 | 置換前の文字の開始位置から文字数を指定。 |
第4引数(必須) | 置換文字列 | 置換後の文字を指定。 |
サンプル
【今回使用する文字列】
カルビ,ロース,ハラミ,レバー,タン
【置換する文字】
ロース → ホルモン
OKボタンで自動で下記のような関数式が出来上がります!
【関数式】
1 | =REPLACE("カルビ,ロース,ハラミ,レバー,タン",5,3,"ホルモン") |
【結果】
ロースが → ホルモンに置換されます\(^^)/
【変更前】カルビ,ロース,ハラミ,レバー,タン
【変更後】カルビ,ホルモン,ハラミ,レバー,タン
REPLACEB関数
・文字列の指定した位置から、バイト数を指定して置換することができます。
・全角と半角を区別します。(全角 → 2バイト 半角 → 1バイト)
構文
=REPLACEB(文字列, 開始位置(バイト), 文字数(バイト), 置換文字列)
引数
REPLACEB | 引数 | 内容 |
第1引数(必須) | 文字列 | 置換前の対象となる文字列を指定。 |
第2引数(必須) | 開始位置 | 置換前の文字から、置換したい文字の開始位置をバイトで指定。(先頭から) |
第3引数(必須) | 文字数 | 置換前の文字の開始位置からバイト数を指定。 |
第4引数(必須) | 置換文字列 | 置換後の文字を指定。 |
サンプル
【今回使用する文字列】
黒 白 赤 青 緑
※文字の間には半角の空白があります。
【置換する文字】
赤 → ピンク
OKボタンで自動で下記のような関数式が出来上がります!
【関数式】
1 | =REPLACEB("黒 白 赤 青 緑",7,2,"ピンク") |
【解説】
開始位置(第2引数)の指定方法です。
まずは赤の文字位置を指定します。
黒 白 赤 青 緑
黒(2バイト) + 半角空白(1バイト) + 白(2バイト) + 半角空白(1バイト) = 6バイトです。
次の文字が赤なので+1して7の指定になります。
次に
文字数(第3引数)の指定方法です。
赤の漢字は全角なので2バイトで2の指定になります。
【結果】
赤 → ピンクという文字に置換されます\(^^)/
【変更前】黒 白 赤 青 緑
【変更前】黒 白 ピンク 青 緑
まとめ
REPLACE関数は1文字を1としてカウントで!
REPLACEB関数は1文字をバイトでカウントするかの違いなので簡単ですよね(*^^)v
以上です。
文字を抜き出す(左と右)
【VBA】 文字の左や右から文字を抜く(Left,Right)
文字を抜き出す(指定位置から指定文字数)
【関数】指定位置から指定文字数を抜き出す(MID,MIDB)
文字の位置を取得
【関数】指定した文字の位置を文字列から検索(FIND,FINDB)
【関数】文字の位置番号を取得(SEARCH,SEARCHB)
文字数を取得
文字を置換する
【関数】指定位置から何文字や何バイト指定して置換(REPLACEとREPLACEB)
【VBA】配列の文字列を置換(先頭,末尾,全て)Replace