Excel VBA:文字列置換のReplaceメソッドの使い方|空白・改行の削除

Replaceメソッドは、指定した範囲内を指定した文字で検索し、指定した文字で置き換えます。




Homeに戻る > Excel セルのTipsへ

Replaceは下記のような大変便利な使い方ができます。

などがあります。
ただ複数の条件の置換え、正規表現による置換えなどはできません。
ここではデータが入力されたシートに、置き換え元と置き換え文字の入力セル、置き換えのコマンドボタンを配置しました。
置き換え元セルと置き換え文字セルに入力し、置き換えコマンドボタンをクリックすると、クリックイベントのVBAが実行します。

関連の「Replaceメソッドでシート全体を置換する」も参照してください。




Replaceメソッドの構文

Range オブジェクト式.Replace(What, Replacement, LookAt, SearchOrder, MatchCase,MatchByte, SearchFormat, ReplaceFormat)

・引数

  • What (必須)バリアント型 (Variant): 検索する文字列を指定
  • Replacement (必須)バリアント型 (Variant): 置き換える文字列を指定
  • LookAt (省略可)バリアント型 (Variant): 使用できる定数は、XlLookAt クラスの 完全に同一なセルだけを検索(xlWhole)か 一部分でも一致するセルの検索(xlPart)
  • SearchOrder (省略可)バリアント型 (Variant): 使用できる定数は、XlSearchOrder クラスの 行方向に検索する(xlByRows)か 列方向に検索する(xlByColumns)
  • MatchCase (省略可)バリアント型 (Variant): 大文字と小文字を区別し検索するには、True を指定
  • MatchByte (省略可)バリアント型 (Variant): Excel で 2 バイト (全角) 文字の言語サポートが選択またはインストールされている場合にだけ使用できる。2バイト文字とだけ一致するようにする場合は、Trueを指定
  • SearchFormat (省略可)バリアント型 (Variant): メソッドの検索書式を指定
  • ReplaceFormat (省略可)バリアント型 (Variant): メソッドの置換書式を指定

・戻り値

ブール型 (Boolean)が返ります。

テストした結果では、常にTrueが返りました。




Excel実行画面

置換え元 と 置換え文字 にそれぞれ入力し、「置換え」ボタンをクリックすると、B1:B12の範囲を検索し置き換えます。

置換え前のシート

■ 実行結果

B1:B1000の範囲で”北海道” が ”ホッカイドウ” になっています。

Replaceを実行し置き換えたシート

Excel VBA実行コード

Option Explicit

Private Sub CommandButton1_Click()
    If Range("F2") = "" Then
        MsgBox "置き換え元を入力してください。"
        Exit Sub
    End If
    
    If Range("F3") = "" Then
        MsgBox "置き換え文字を入力してください。"
        Exit Sub
    End If
    
      
    '置き換え実行
    Range("B1:B1000").Replace what:=Range("F2"), replacement:=Range("F3")

End Sub




Homeに戻る > Excel セルのTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved