VBA 文字列を別の文字列に置換えるReplace関数

スポンサーリンク

Replace【リプレース】関数

文字列を別の文字列に置換えるには、Replace【リプレイス】関数を使用します。セル範囲の中から指定した内容を別の内容に置換えるには、Range【レンジ】オブジェクトのReplace【リプレイス】メソッドを使用します。

Replace【リプレース】関数の書式と引数の説明

[]内は省略可能です。
Replace(Expression,Find,Replace[,Start,Count,Compare])
【戻り値】 バリアント型 (内部処理形式 String の Variant)

  • Expression【エクスプレッション】(必須)
    置換する文字列を含む文字列式 を指定します。
  • Find【ファインド】(必須)
    検索する置換えしたい文字列を指定します。
  • Replace【リプレース】(必須)
    置換後の文字列を指定します。
  • Start【スタート】(省略可)
    引数Expressionに指定した文字列内の検索開始位置を指定います。省略した場合は「1 (文字列の先頭)」が指定されます。
  • Count【カウント】(省略可)
    置換する個数を指定します。検索して見つかった結果が複数ある場合に、先頭から指定個数分だけ置換えされます。省略した場合は「‐1」が指定されて、検索でみつかったすべての文字列を置換えします。
  • Compare【コムペール】(省略可)
    文字列を検索するときの比較モードをvbCompareMethod列挙型の定数で指定します。省略した場合は、「vbBinaryCompare」が指定されます。
vbCompareMethod列挙型の定数
定数内容
vbBinaryCompare
(ブイビーバイナリコムペール)
0バイナリモードで比較
vbTxetCompare
(ブイビーテキストコムペール)
1テキストモードで比較

※バイナリモード:完全に一致するかを比較
※テキストモード:
大文字/小文字、全角/半角、ひらがな/カタカナの区別なしに比較

セルのA列の文字列の全角空白を空白無しに置き換えるコード例

Sub 置換()
Dim i As Long
For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
Cells(i, 1) = Replace(Cells(i, 1), " ", "")
Next i
End Sub

実行前

実行後


以上で、Replace【リプレイス】関数についての解説を終了します。ありがとうございました。

文字列関数一覧表

文字列関数の一覧表です。
関数名のリンクで詳細ページが開きます。
関数内容
Formatデータの表示書式を変換
Left文字列の左端から文字列の一部分を取り出す
Right文字列の右端から文字列の一部分を取り出す
Mid文字列の指定した一部分を取り出す
LeftB文字列の左端からバイト数で文字列の一部分を取り出す
RightB文字列の右端からバイト数で文字列の一部分を取り出す
MidB文字列の指定位置からバイト数で文字列の一部分を取り出す
Len文字列の長さを取得する
LenB文字列のバイト数を取得する
ChrASCIIコードに対応する文字を取得する
Asc文字に対応するASCIIコードを取得する
StrConv文字の種類を変換する
LCaseアルファベットの大文字を小文字に変換
UCaseアルファベットの小文字を大文字に変換
LTrim文字列の先頭にあるスペースを削除する
RTrim文字列の末尾にあるスペースを削除する
Trim文字列の先頭と末尾のスペースを削除する
Replace文字列を置換えする
Spaceスペースを追加する
String文字を指定した数表示する
StrComp2つの文字を比較する
InStr文字を文字列の先頭から検索する
InStrRev文字を文字列の末尾から検索する

スポンサーリンク

関連記事・広告