6. VBA からの利用

Excel VBA からは Application.Run() メソッドで呼び出すことができます。

選択範囲内での置換

次の例は、選択範囲中のセル内に単語とみなせる部分があれば < > で囲むマクロです。

Public Sub ReplaceRE()
Dim r As Range
If AddIns("XLCTextEx").Installed = False Then Exit Sub
For Each r In Selection
  If VarType(r.Value) = vbString Then
    r.Value = Application.Run("XLCRegExReplace", "\w+", "<$&>", r.Text, "g")
  End If
Next
End Sub

この例では、VarType 関数によりセルの内容が文字列かどうか判定し、文字列の場合だけ処理するようにしています。

ユーザーフォームから XLCGrep を呼び出す

次の例は、ユーザーフォーム上のコマンドボタン BtnGrep がクリックされた時のコードです。TxtPat、TxtOpt1、TxtOpt2 はいずれもテキストボックスで、それぞれ、正規表現のパターン、正規表現のオプション、その他のオプションが入力されています。

Private Sub BtnGrep_Click()
Dim i As Long
If AddIns("XLCTextEx").Installed = False Then Exit Sub
i = Application.Run("XLCGrep", TxtPat.Text, TxtOpt1.Text, TxtOpt2.Text)
MsgBox i & " 行がクリップボードにコピーされました。"
End Sub