Я считаю, что простое регулярное выражение тест даст вам то, что вы хотите:
Dim objRegEx, strValue
'Create Regular Expression object to parse the file
Set objRegEx = CreateObject("VBScript.RegExp")
objRegEx.IgnoreCase = True
objRegEx.Global = True
objRegEx.MultiLine = True
objRegEx.Pattern = "\d+\,\d+\.\d{2}"
strValue = "e.g. 32,000.00."
MsgBox objRegEx.test(strValue) '<- True
strValue = "e.g. 3200000."
MsgBox objRegEx.test(strValue) '<- False
выше приведет булевой ответ (True/False). адаптируя его к вашей обычной ...
Set objRegEx = CreateObject("VBScript.RegExp")
objRegEx.IgnoreCase = True
objRegEx.Global = True
objRegEx.MultiLine = True
objRegEx.Pattern = "\d+\,\d+\.\d{2}"
Root_RefundAmount = Root_TaxDataSummary.SlvObject("RefundAmount").GetROProperty("text")
If Not objRegEx.test(Root_RefundAmount) Then
'Pattern NOT Found
Else
'Pattern IS Found
End If
Для объяснения Строчка:
"\d+\,\d+\.\d{2}"
\ d = любой номер от 0 до 9 ...
«А число сопровождаемых запятой за которыми следуют цифры и содержащие точку и 2 десятичные знаки "{Предположим, вы имеете в виду 2 числа} ... В зависимости от вашего ввода, это намного проще смотреть, но оно также будет соответствовать номерам, таким как 12345,12345.99, которые могут или не могут желательно.
Если вам нужно, чтобы быть точным, то вы можете рассмотреть ниже Regex:
"\d{1,3}(?:\,\d{3})*\.\d{2}"
Это будет соответствовать число от 0,00 до 999,999,999.99 и т.д., в типичном цифровом формате ...
Если вы хотите специально искать чисел выше 1000 (с Comma) Затем измените Star «*» в плюс «+» означает один или больше Обязательны ...
"\d{1,3}(?:\,\d{3})+\.\d{2}"
или еще более с pecific Regex:
(?:[1-9]|[1-9][0-9]|[1-9][0-9]{2})(?:\,[0-9]{3})+\.[0-9]{2}
'OR
(?:[1-9]|[1-9]\d|[1-9]\d{2})(?:\,\d{3})+\.\d{2}
Для немного дополнительной информации о регулярных выражениях и '\ d' класса Character, Пожалуйста, обратите внимание на ссылки ниже:
http://www.regular-expressions.info/shorthand.html
https://msdn.microsoft.com/en-us/library/20bw873z(v=vs.110).aspx#Anchor_9
Использование регулярное выражение. – Lankymart