私は数日間、この問題で苦労されていると、基本的に私は結果を返すべきVBAで関数を書かれているソリューション戻る正規表現MatchCollection - エラー450
を見つけることができませんでしたRegEx.Executeステートメントから 'End Function'ステートメントに達するたびに、私はランタイムエラー450を取得し、オブジェクト変数の割り当てがエラーをスローしないので、何かがうまくいかない場所を特定できません。
私はVBAとプログラミングには全く新しいので、オブジェクト/ MatchCollection/Collectionsの振る舞いに誤解している可能性があります。私が返す期待値が、ときに関数を呼び出して、文字列s
? ?FindDateAndTimePatternRegEx(" Afgår 01-01-2017 00:24:00, anvendt log 01-01-2017 10:53:24 er 10:29:24 EFTER dette")
のDebug.Printを使用して、イミディエイトウィンドウでこれを試してみる
Function FindDateAndTimePatternRegEx(s As String) As Object
On Error GoTo erro
Dim objRex As RegExp
Dim arrMatch As Object
's = " Afgår 01-01-2017 00:24:00, anvendt log 01-01-2017 10:53:24 er 10:29:24 EFTER dette"
Set objRex = New RegExp
With objRex
.IgnoreCase = True
.Global = True ' the global parameter makes sure that all pattern matches in the string are found and returned in the return collection
.Pattern = "([0-9]{2}\-[0-9]{2}\-[0-9]{4})" & " " & "([0-9]{2}:[0-9]{2}:[0-9]{2})"
End With
Set arrMatch = objRex.Execute(s)
Set FindDateAndTimePatternRegEx = arrMatch
'Debug.Print FindDateAndTimePatternRegEx.Item(0).FirstIndex
'Debug.Print FindDateAndTimePatternRegEx.Item(1)
Set objRex = Nothing
Exit Function
erro:
MsgBox Err.Description
End Function
毎回:ここ
は私のコードですExit FunctionまたはEnd Functionのいずれかに達すると、実行時エラー450が発生する何が問題になるか説明できますか?事前
でおかげ
敬具
おかげWiktor第 - これが私の問題を解決しました! –
申し訳ありません、もちろん - 私は今答えを受け入れました。まだフォーラムをナビゲートする方法を学ぶ –