Excel VBA replaceは文字列内の特定部分を別の文字列に置き換えるために使用

 

Excel VBA  replace関数は、文字列内の特定の部分を別の文字列に置き換えるために使用されます。これで文字列操作が簡単に行えます。具体的な使い方や、注意点やサンプルコードを紹介します。

 

Excel VBA replaceを利用

以下のようなシーンで利用されます。

・文字列内の特定の単語やフレーズを別のものに置き換える。

・データクレンジングの一環として、不要な文字や記号を取り除く。

・特定のパターンに基づいてデータをフォーマットする。

 

使い方

Replace(Expression As String, Find As String, Replace As String, [Start As Long], [Count As Long], [Compare As VbCompareMethod]) As String

・Expression 置き換え操作を行う対象の文字列
・Find 検索する文字列
・Replace 置き換える文字列
・Start 検索を開始する位置(省略可能)
・Count 置き換える回数(省略可能)
・Compare 検索の比較方法(省略可能)vbBinaryCompare(バイナリ比較)またはvbTextCompare(テキスト比較)が使用できます。

 

ポイント

・置き換え操作は元の文字列を変更するのではなく、新しい文字列を返します。

 

Excel VBA replaceのサンプルコード
基本的な使い方
文字列内の「Apple」を「Orange」に置き換える例
Option Explicit

Sub ReplaceExample()
    Dim originalText As String
    Dim newText As String
    
    originalText = "I like Apple."
    newText = Replace(originalText, "Apple", "Orange")
    
    MsgBox newText ' 結果: "I like Orange."
End Sub

大文字と小文字を区別しない置き換え
「apple」から「APPLE」など、大文字小文字の違いを無視して置き換える例

Option Explicit

Sub ReplaceIgnoreCaseExample()
    Dim originalText As String
    Dim newText As String
    
    originalText = "I like apple. I like APPLE."
    newText = Replace(originalText, "apple", "Orange", 1, -1, vbTextCompare)
    
    MsgBox newText 
End Sub

部分的に置き換える
特定の部分だけを置き換える例(先頭から1文字目以降で検索し、最初の1回だけ置き換える)

Option Explicit

Sub ReplacePartialExample()
    Dim originalText As String
    Dim newText As String
    
    originalText = "I like Apple. Apple is tasty."
    newText = Replace(originalText, "Apple", "Orange", 1, 1)
    
    MsgBox newText 
End Sub

これらの例を使って、Replace関数の使い方とその効果を理解し、さまざまなパターンで文字列置換を行えるようになります。

 

あなたもExcel VBAのスキルを証明できるようにしませんか? Excel VBA エキスパート資格は、VBAプログラミングの専門家としての信頼性を高めキャリアの成長に大きく貢献し、求人市場での競争力を高め、キャリア機会を拡大します。

 

当サイトでは、Excel VBAエキスパート認定資格取得に役立つ情報を提供しています。まずは問題集から挑戦してみませんか?

 

ExcelVBAエキスパートベーシック
仕事の効率をあげるためにExcelVBAを利用する人が対象の問題集です。


ExcelVBAエキスパートスタンダード

ExcelVBAの開発を仕事にする人が対象の問題集です。