如何检查字符串是一位数字还是两位数字,否则返回false
?
答案 0 :(得分:9)
怎么样:
Function OneOrTwo(i As Integer) As Boolean
Dim objRegEx As Object
Set objRegEx = CreateObject("VBScript.RegExp")
objRegEx.IgnoreCase = True
objRegEx.Global = True
objRegEx.Pattern = "^\d{1,2}$"
OneOrTwo = objRegEx.Test(i)
End Function
答案 1 :(得分:7)
您也可以使用VBA LIKE执行此操作:
Function OneOrTwo(Digits As Variant) As Boolean
OneOrTwo = Digits Like "#" Or Digits Like "##"
End Function
答案 2 :(得分:1)
IF CInt(myNumberString) < 100 Then
MsgBox "String must be either 1 or 2 digits"
Else
Msgbox "Failed"
End IF
应该适合你。
答案 3 :(得分:1)
Function RegexContains(ByVal find_in As String, _
ByVal find_what As String, _
Optional IgnoreCase As Boolean = False) As Boolean
Dim RE As Object
Set RE = CreateObject("vbscript.regexp")
RE.Pattern = find_what
RE.IgnoreCase = IgnoreCase
RE.Global = True
RegexContains = RE.Test(find_in)
End Function
按照Remou的例子,假设单元格是A1,你会写:
= RegexContains(A1,“^ \ d {1,2} $”)
答案 4 :(得分:0)
这是我会尝试的。 / d表示数字,?选项2位数。
/ d / d?
或
/ d {1,2}