〒000-0000 ○○県○○区○○2丁目
のような文字列から○○県○○区という文字を抽出したいのですがうまくいきません。
VBA
1Sub TEST01() 2 3Dim RE, Matches 4Dim Mojiretsu As String 5Dim xxx As String 6Dim i As Integer 7Dim moji As Range 8i = 2 9 10Set RE = CreateObject("VBScript.RegExp") '正規表現を使用可能にするオブジェクトを作成 11 12Set moji = Worksheets("INPUT").Cells(i, 3) 13Mojiretsu = moji.Value '検査対象文字列指定 14 If InStr(Mojiretsu, "区") > 0 Then 15 With RE 16 .Pattern = "\s.*区" 17 .IgnoreCase = True 18 .Global = True 19 End With 20 Set Matches = RE.Execute(Mojiretsu) 21 xxx = Matches(0).Value 22 Worksheets("カテゴリ名抽出").Cells(i, 2).Value = xxx 23 Set Matches = Nothing 24 Set RE = Nothing 25End Sub
※質問用にループ処理は取り払っています
このようにしているのですが、
xxx = Matches(0).Value
の部分でエラーになってしまいます。
エラー→「プロシージャの呼び出し、または引数が不正です」
何か解決策はありませんか?
ちなみに、.Patternの正規表現を"[0-9]"や"[^0-9]"
にすると動きます。

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/05/24 06:45
2016/05/24 06:58
2016/05/25 03:21