是否有人知道如何阻止用户使用if语句在文本字段中输入多个逗号?例如:
if txtWidth.text (contains more than one ",") then
MsgBox ("Please enter only one comma.")
Else ...
我应该在第一对括号的位置放置什么?我正在制作的节目是Solidworks。
我刚开始编程,有些条款对我来说不是很清楚。如果在其他地方解释并且我没有正确搜索我道歉。
如果有人可以帮助我那将是非常好的。 提前谢谢!
罗布
答案 0 :(得分:1)
我认为你需要一些嵌套的if语句。
这样的事情:
If input = "," Then
If numcommas = 0 Then
numcommas = 0
Else
'Don't allow input of character
End If
End If
为了使用它,你需要稍微改变一下,但这应该让你开始,或者至少给你一个关于去哪里的想法。
答案 1 :(得分:1)
您可以使用InStr()
功能两次:
if (InStr(1,txtWidth.Value,",") > 0 ) then
if (InStr(InStr(1,txtWidth.Value,",") + 1,txtWidth.Value,",") > 0) then
MsgBox ("Please enter only one comma.")
end if
end if
有关InStr
的详细信息,请参阅here。
答案 2 :(得分:0)
这是一种只使用一个if函数的方法:
If (Len(txtWidth.text) - Len(Replace(txtWidth.text, ",", ""))) > 1 Then
'Your Message'
End If
这段代码的作用是将字符串的长度与字符串的长度进行比较,清除所有逗号。所以Len(“Test”)将返回长度为5而Len(Replace(“Test”,“,”,“”)返回4并通过减去这些值来获得字符串中逗号的数量。< / p>