在此计算器程序中,+
有效但-
,*
和/
不起作用。为什么呢?
Option Explicit
Dim IB, Sum1, Sum2, Sym
Sum1 = InputBox("Enter first #NO", "VBS Calculator")
If Not IsNumeric(IB) Then
MsgBox "Please enter a valid Number"
ElseIf IsNumeric(IB) Then
If Not IsNumeric(IB) Then
MsgBox " Please enter a valid Number"
ElseIf IsNumeric(IB) Then
Sum2 = InputBox("Enter second #NO", "VBS Calculator")
Sym = InputBox("Enter a law of Arithmetic", "VBS Calculator")
If Sym = "+" Then MsgBox (CInt(Sum1) + CInt(Sum2))
ElseIf Sym = "-" Then MsgBox (CInt(Sum1) - CInt(Sum2))
ElseIf Sym = "/" Then MsgBox (CInt(Sum1) / CInt(Sum2))
ElseIf Sym = "*" Then MsgBox (CInt(Sum1) * CInt(Sum2))
End If
End If
答案 0 :(得分:2)
如果您将语句与if then
放在同一行,则其他任何子句都无效。
e.g。
if a=b then statement
是
的逻辑等价物if a = b then
statement
end if
您的代码也有其他问题,例如检查Elseif IsNumeric(IB) then
后跟if Not IsNumeric(IB) then
第二个if将永远被跳过,直接进入elseif