VBA 正規表現を使用して、次の形式の時間範囲を検証しようとしています: #0:00xm - #0:00xm
where x
isa
またはp
. したがって、文字列リテラルは"1:30pm - 12:00am"
. このパターンを持つセルを一致させたい。
このオンライン ツールで正規表現を使用しhttp://public.kvalley.com/regex/regex.asp
て式を確認すると、正しく一致します。
しかし、VBAで同じ式を使うと一致しません。
Dim rRange As Range
Dim rCell As Range
Set rRange = Range("A2", "A4") '"G225")
For Each rCell In rRange.Cells
MsgBox (rCell.Value)
If rCell.Value Like "^([0-9]{1,2}[:][0-9]{2}[apm]{2}[ ][-][ ][0-9]{1,2}[:][0-9]{2}[apm]{2})$" Then
MsgBox ("YES")
'rCell.Interior.Color = RGB(0, 250, 0)
Else
MsgBox ("NO")
'rCell.Interior.Color = RGB(250, 0, 0)
End If
Next rCell