たとえば、abcABC123456XYGという引数から、123456のみを取り出したい。
VBAの組み込み関数で、適当なのがありそうだけど、無いみたい。
カスタム関数を作るにも、これはという情報がググっても見つからなかったので、自作してメモ。
Function FindNumberRegExp(ARG As Variant) '汎用 引数から数字のみを取り出して返す ' Dim reg As New RegExp '// 正規表現クラスオブジェクト If Not IsNull(ARG) Then Set reg = CreateObject("VBScript.RegExp") <pre><code> '// 検索条件=数字以外を抽出 reg.Pattern = "[^0-9]" '// 文字列の最後まで検索する reg.Global = True '// 指定セルの数字以外の文字を空文字に置き換える FindNumberRegExp = reg.Replace(ARG, "") End If</code></pre> End Function