【VBA】ExcelでスプレッドシートのREGEXEXTRACT関数を使う

ネコニウム研究所

PCを利用したモノづくりに関連する情報や超個人的なナレッジを掲載するブログ

【VBA】ExcelでスプレッドシートのREGEXEXTRACT関数を使う

2019-11-16 |

Excel で Google スプレッドシートの REGEXEXTRACT 関数を使うためのメモです。

手順書

Excel でも 正規表現を使った文字列の抽出ができるようになる。
標準モジュールに以下のコードを追加すると関数 REGEXEXTRACT を使うことができるようになる。

Option Explicit

Public Function REGEXEXTRACT(str As String, pat As String) As String
    Dim reg As Object
    Set reg = CreateObject("VBScript.RegExp")

    With reg
        .Pattern = pat
        .IgnoreCase = False
        .Global = True
    End With

    Dim Matches As Object
    Set Matches = reg.Execute(str)

    REGEXEXTRACT = ""

    If Matches.Count = 0 Then Exit Function

    REGEXEXTRACT = Matches(0).Value

End Function

参考書

下は、すんごい昔に読んでいた参考書の最新版です。
載せておいて難ですが、今は本より Google 先生に聞いた方が良いです。
本の内容的には、できることがずらーっと載っているので、どんなことができるかカタログ的に見たい場合には、お薦めです。