Home > 即効テクニック > Excel VBA > ユーザーフォーム関連のテクニック > テキストボックス内の選択されている文字列を置き換える

即効テクニック

ユーザーフォーム関連のテクニック

テキストボックス内の選択されている文字列を置き換える

(Excel 2000/2002/2003)
●概要●
テキストボックス内の選択されている文字列を置き換えるには、SelTextプロパティを利用します。

 構文 オブジェクト.SelText = 文字列

 設定項目   内容
 オブジェクト テキストボックスオブジェクト
 文字列    置き換える文字列

次のサンプルは、ユーザーフォームに配置されたコマンドボタンをクリックすると、TextBox1内のテキストのうち、選択された部分を文字列「Excel」に置き換えます。
また、文字列が選択されていない場合、カーソルの位置に文字列を挿入します。

●サンプル1●
Private Sub CommandButton1_Click()
    TextBox1.SelText = "Excel"
End Sub

なお、文字列が選択されていない場合、SelTextプロパティは「""(長さ0の文字列)」を返します。これを利用して、上記のコードを文字列が選択されている場合のみ動作するように修正したものが、下記のコードです。

●サンプル2●
Private Sub CommandButton2_Click()
    If TextBox1.SelText <> "" Then
        TextBox1.SelText = "Excel"
    End If
End Sub