vb语法错误,vb的else if有两种用法: if condition ... elseif condition ... end if 或者是 if condition ... else if condition ... end if end if 第一个就相当于js的else if,第二个相当于在else里在嵌套一个if语句 所以你的语句要么把else if改成elseif,或者每个if结束都加个end if
我改成了: if ddd_length= 0 then msgbox "aaa结果为:"&ddd_length&"!" else if ddd_length= 1 then msgbox "aaa结果为:"&ddd_length&"!" else if ddd_length=2 then msgbox "aaa结果为:"&ddd_length&"!" else if ddd_length=3 then msgbox "aaa结果为:"&ddd_length&"!" else if ddd_length=4 then msgbox "aaa结果为:"&ddd_length&"!" else if ddd_length=5 then msgbox "aaa结果为:"&ddd_length&"!" else if ddd_length=6 then msgbox "aaa结果为:"&ddd_length&"!" else if ddd_length=7 then msgbox "aaa结果为:"&ddd_length&"!" else if ddd_length=8 then msgbox "aaa结果为:"&ddd_length&"!" else msgbox "超出范围!" exit sub End if但是,还是没有任何对话框提示!!!
If ddd_length= 0 then msgbox "aaa结果为:"&ddd_length&"!" ElseIf ddd_length= 1 then msgbox "aaa结果为:"&ddd_length&"!" ElseIf ddd_length=2 then msgbox "aaa结果为:"&ddd_length&"!" ElseIf ddd_length=3 then msgbox "aaa结果为:"&ddd_length&"!" ElseIf ddd_length=4 then msgbox "aaa结果为:"&ddd_length&"!" ElseIf ddd_length=5 then msgbox "aaa结果为:"&ddd_length&"!" ElseIf ddd_length=6 then msgbox "aaa结果为:"&ddd_length&"!" ElseIf ddd_length=7 then msgbox "aaa结果为:"&ddd_length&"!" ElseIf ddd_length=8 then msgbox "aaa结果为:"&ddd_length&"!" Else msgbox "超出范围!" exit sub End if
ddd_length=len(ddd) msgbox "&ddd_length&" 有结果么
好象msgbox不能用吧 为什么不用select case呢
回:underone(underone)可以正确返回字符串的长度!
是不是应该将ddd_lenth转为字符形式:)
dim ddd_length ddd_length=8 if ddd_length = 1 then msgbox "aaa结果为:"&ddd_length&"!" elseif ddd_length = 2 then msgbox "aaa结果为:"&ddd_length&"!" elseif ddd_length = 3 then msgbox "aaa结果为:"&ddd_length&"!" elseif ddd_length = 4 then msgbox "aaa结果为:"&ddd_length&"!" elseif ddd_length = 5 then msgbox "aaa结果为:"&ddd_length&"!" elseif ddd_length = 6 then msgbox "aaa结果为:"&ddd_length&"!" elseif ddd_length = 7 then msgbox "aaa结果为:"&ddd_length&"!" elseif ddd_length = 8 then msgbox "超出范围!" end if
if condition
...
elseif condition
...
end if
或者是
if condition
...
else if condition
...
end if
end if
第一个就相当于js的else if,第二个相当于在else里在嵌套一个if语句
所以你的语句要么把else if改成elseif,或者每个if结束都加个end if
msgbox "aaa结果为:"&ddd_length&"!"
else if ddd_length= 1 then
msgbox "aaa结果为:"&ddd_length&"!"
else if ddd_length=2 then
msgbox "aaa结果为:"&ddd_length&"!"
else if ddd_length=3 then
msgbox "aaa结果为:"&ddd_length&"!"
else if ddd_length=4 then
msgbox "aaa结果为:"&ddd_length&"!"
else if ddd_length=5 then
msgbox "aaa结果为:"&ddd_length&"!"
else if ddd_length=6 then
msgbox "aaa结果为:"&ddd_length&"!"
else if ddd_length=7 then
msgbox "aaa结果为:"&ddd_length&"!"
else if ddd_length=8 then
msgbox "aaa结果为:"&ddd_length&"!"
else
msgbox "超出范围!"
exit sub
End if但是,还是没有任何对话框提示!!!
msgbox "aaa结果为:"&ddd_length&"!"
ElseIf ddd_length= 1 then
msgbox "aaa结果为:"&ddd_length&"!"
ElseIf ddd_length=2 then
msgbox "aaa结果为:"&ddd_length&"!"
ElseIf ddd_length=3 then
msgbox "aaa结果为:"&ddd_length&"!"
ElseIf ddd_length=4 then
msgbox "aaa结果为:"&ddd_length&"!"
ElseIf ddd_length=5 then
msgbox "aaa结果为:"&ddd_length&"!"
ElseIf ddd_length=6 then
msgbox "aaa结果为:"&ddd_length&"!"
ElseIf ddd_length=7 then
msgbox "aaa结果为:"&ddd_length&"!"
ElseIf ddd_length=8 then
msgbox "aaa结果为:"&ddd_length&"!"
Else
msgbox "超出范围!"
exit sub
End if
msgbox "&ddd_length&"
有结果么
为什么不用select case呢
ddd_length=8
if ddd_length = 1 then
msgbox "aaa结果为:"&ddd_length&"!"
elseif ddd_length = 2 then
msgbox "aaa结果为:"&ddd_length&"!"
elseif ddd_length = 3 then
msgbox "aaa结果为:"&ddd_length&"!"
elseif ddd_length = 4 then
msgbox "aaa结果为:"&ddd_length&"!"
elseif ddd_length = 5 then
msgbox "aaa结果为:"&ddd_length&"!"
elseif ddd_length = 6 then
msgbox "aaa结果为:"&ddd_length&"!"
elseif ddd_length = 7 then
msgbox "aaa结果为:"&ddd_length&"!"
elseif ddd_length = 8 then
msgbox "超出范围!"
end if