vb判断语句怎么用

我要判断
如果:
a>0
b>0
c>0
都成立的情况下!我输出MSGBOX
我用IF 语句做不出来.请指教!

基本用法是:
If 条件1 Then
语句段
End if
或:
If 条件1 Then
语句段1
Else
语句段2
End if
这样使用If语句,就可以使程序有选择性的执行代码。
注意,If语句一定要有判断条件和执行语句,最后用 End If 结尾。但如果执行语句只有一条,就可以缩成一行,不必再写End If。如:
If 条件1 Then 语句1
或:
If 条件1 Then 语句1 Else 语句2

好,下面做这样一个题:输一个数,判断奇数还是偶数。
这时可以使用一个新的运算符——Mod。Mod可以对一个数取余数。例如 10 / 3 = 3……1
则10 Mod 3 = 1。所以如果任意一个数 n Mod 2 = 1 这个数就是奇数了。所以源代码十分简单:
Private Sub Command1_Click()
If Val(Text1.Text) Mod 2 = 1 Then
Label1.Caption = "这是奇数"
Else
Label1.Caption = "这是偶数"
End If
End Sub
这段代码应该很容易读懂了。但是有的朋友会说如果想加上判断非奇非偶的判断,怎么办呢?我们可以这样想,先判断是否奇数,再判断是否偶数,如果两者都不是,那就是非奇非偶了!这样的话,我们就要使用到多层次的函数了。把这个想法翻译过来,就是

If Val(Text1.Text) Mod 2 = 1 Then
Label1.Caption = "这是奇数"
Else
If Val(Text1.Text) Mod 2 = 0 Then
Label1.Caption = "这是偶数"
Else
Label1.Caption = "非奇非偶"
End If
End If

做着做着发现,当我们输入小数的时候,程序依然会输出奇偶,可小数无奇偶之分!所以我们要用一条函数来判断是否整数——Int()。该函数可以将一个数变为整数。所以如果 n = Int(n)那么这个数就是整数了。为了把这个条件加入判断,则应该使用逻辑运算符 And 连接两个条件。必须两个条件同时成立,才能算是整条语句成立。

Private Sub Command1_Click()
If Val(Text1.Text) Mod 2 = 1 And Val(Text1.Text) = Int(Val(Text1.Text)) Then
Label1.Caption = "这是奇数"
Else
If Val(Text1.Text) Mod 2 = 0 And Val(Text1.Text) = Int(Val(Text1.Text)) Then
Label1.Caption = "这是偶数"
Else
Label1.Caption = "非奇非偶"
End If
End If
End Sub

这样,我们就可以判断非奇非偶的数了。
另外,刚才的If语句还有一种写法,就是 ElseIf。最终可以写成如下形式,可以对比一下上下两段。
Private Sub Command1_Click()
If Val(Text1.Text) Mod 2 = 1 And Val(Text1.Text) = Int(Val(Text1.Text)) Then
Label1.Caption = "这是奇数"
ElseIf Val(Text1.Text) Mod 2 = 0 And Val(Text1.Text) = Int(Val(Text1.Text)) Then
Label1.Caption = "这是偶数"
Else
Label1.Caption = "非奇非偶"
End If
End Sub

测试完之后,可以发现两段代码的效果完全一样呢。其实,这就是将多层次的If条件语句合并。目的是减少代码的长度,增加可读性。
当然,至于上面所讲过的If语句精简写法,这里不建议使用,否则语句太长了,影响可读性。在同一行上不能写Elseif,而要写Else If。例如:
If x<60 Then Print "D" Else If x<75 Then Print "C" Else If x<85 Then Print "B" Else Print "A"
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-23
If A>0 Then
If B>0 Then
If C>0 Then
MsgBox"×××××" '使用时请把"×××××" 替换为Msgbox中要显示的文本
End If
End If
End If
楼上的那几位,
拜托你们不要误人子弟好不好,
那种方法只有在极特殊的时候才会用,
建议用这种,
可以处理多种情况。本回答被提问者采纳
第2个回答  2012-01-27
都成立肯定是用and连接,,楼上的朋友也说了这边重复一下..
if a>0 and b>0 and c>0 then msgbox "True"
if,for,do等语句是最基本的,一定要去掌握.
第3个回答  2012-01-27
if a>0 and b>0 and c>0 then
msgbox " 条件成立!"
end if
第4个回答  2012-01-27
简单的东西,希望还是多看帮助的好。这样问别人的学是学不会的。
相似回答