: |
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 関数によりセルの内容が文字列かどうか判定し、文字列の場合だけ処理するようにしています。
次の例は、ユーザーフォーム上のコマンドボタン 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