1樓:baby_原來
if 條件為真 then
執行語句
end if(判斷結束)
if a=3 then
if b=2 then
if c=7 then
if d=8 then
以上條件都成立的時候執行下邊一段話
.....執行**並結束這個判斷
(假如d=5,則執行下邊的**)
else
...........執行**
end if (這裡是結束d=8 這個條件的)end if(這裡是結束c=7這個條件的)end if(這裡是結束b=2這個條件的)end if(這裡是結束a=3這個條件)
2樓:
vb6中 if then 可以允許寫在一行中,如果一行中的then後需要跟不止一個語句,可以在語句間加冒號,如:
if 2 = 2 then text1.text = 2: text2.text = 2
要理解這一點,你只需要記住 vb語句與語句之間可以通過換行符來識別...
3樓:匿名使用者
if語句可以像下面這樣子寫
第一種if ... then ...
第二種if ... then
......
end if
第三種if ... then
......
else
......
end if
第四種if ... then ... else ...
總的來說,如果是分開兩行寫的話,就要end if,一行的就不用了
4樓:谷歌vip使用者
不需要了
假如判斷條件a=b為真,執行suba,否則執行subb,用下面的**格式可以省略end if,else不用也可以。
if a=b then suba else subb寫在一行可以省略end if。
如果a=b你要同時執行suba和subb的話,語句間用半形的:隔開就可以了
if a=b then suba:subb else subb用:符號可以在一行**中寫n行**。
例如 a=b:a=c:a=d
等價於a=b
a=ca=d
這樣也是不會出錯的。
你上面所提到的
if keyascii=13 then text2.setfocus等價於if keyascii=13 thentext2.setfocus
end if
如果分開兩行寫必須有end if
因為編譯器需要知道你在什麼時候結束if判斷,判斷條件和處理結果寫在一行編譯器可以知道你什麼時候結束if語句,如果寫在兩行,編譯器就無法識別了,所以必須新增end if。
5樓:荔菲彭澤
if keyascii=13 then text2.setfocus
這一句不需要end if
在vb中如何簡化過多巢狀的if語句?
6樓:匿名使用者
何必用vb,直接操作就可以,選定a5到b100,假設100行資料,然後-編輯-定位-定位條件的空值,然後在編輯欄內輸入 = ,最後按ctrl+回車即可
7樓:匿名使用者
if b(e) <= 10 then
s1 = s1 + 1
elseif b(e) <= 20 thens2 = s2 + 1
elseif b(e) <= 50 thens3 = s3 + 1
elseif b(e) <= 100 thens4 = s4 + 1
elseif b(e) <= 1000 thens5 = s5 + 1
elseif b(e) <= 10000 thens6 = s6 + 1
elseif b(e) <= 100000 thens7 = s7 + 1
end if
8樓:寒信
方法一if b(e) <= 10 then
s1 = s1 + 1
elseif b(e) <= 20 thens2 = s2 + 1
elseif b(e) <= 50 thens3 = s3 + 1
elseif b(e) <= 100 thens4 = s4 + 1
elseif b(e) <= 1000 thens5 = s5 + 1
elseif b(e) <= 10000 thens6 = s6 + 1
elseif b(e) <= 100000 thens7 = s7 + 1
end if
方法二版
權select case b(e)
case <= 10
s1 = s1 + 1
case 10 to 20
s2 = s2 + 1
case 20 to 50
s3 = s3 + 1
case 50 to 100
s4 = s4 + 1
case 100 to 1000
s5 = s5 + 1
case 1000 to 10000
s6 = s6 + 1
case 10000 to 100000
s7 = s7 + 1
end select
關於vb中if 語句的巢狀問題
9樓:【都市精靈
標準的if格式你應該知道吧 我就不說了 只說一下巢狀
在一次if判斷裡,可以巢狀無數個子if判斷(我沒遇到過巢狀到頂的情況),無非是在then後或else後進行巢狀,因為互不影響 所以我就合起來說了:
if [真假判斷語句] then
*** '星號表示其餘的**
if [巢狀的真假判斷語句1] then
[巢狀中if成立 執行的**]
else '可以不要 看情況
[巢狀中if不成立 執行的**]
end if
*** 』星號表示其餘的**
else if [巢狀的真假判斷語句2] then '這裡的if可以跟在if後(加個空格),另起一行也行。如果在巢狀前還有別的**需要執行的話,就參照上面所寫的進行巢狀。
end if '如果if另起一行的話,要兩個end if,否則只要一個
注:注意巢狀的時候最好 用空格 把子判斷推後幾格,看著舒服。頂格寫也行,就是看著亂。
【哥們兒 這可全是我一個字一個字地打的啊~您就給個辛苦費吧~呵呵 有不懂的再通過 補充 問我】
10樓:
if 條件為真 then
執行語句
end if(判斷結束)
if a=3 then
if b=2 then
if c=7 then
if d=8 then
以上條件都成立的時候執行下邊一段話
.....執行**並結束這個判斷
(假如d=5,則執行下邊的**)
else
...........執行**
end if (這裡是結束d=8 這個條件的)end if(這裡是結束c=7這個條件的)end if(這裡是結束b=2這個條件的)end if(這裡是結束a=3這個條件)
希望這樣你可以看的懂
11樓:南極胖熊
if *** then
***else ***
end if
if *** then
***else if *** then
***end if
end if
vb for迴圈裡巢狀if
12樓:匿名使用者
**錯了
for i=1 to 30 '正確
for j = 0 to (k-1)
if a(j),math(i) then '格式為 if……then …… end if
if math(i) <= a(j + 1) thenm(j) = m(j) + 1
end if '你用了兩個if 語句 但是隻用了一個end if
'此處再加上一個 end if 就不會報錯了next j
next i
13樓:匿名使用者
k是什麼呀??
還差個end if 但就算把end if加上也不見得可以執行因為邏輯不對
你到底想實現什麼功能呀??? 說出來看看啊
14樓:
for i = 0 to 30
for j = 0 to (k - 1)
if a(j) < math(i) thenif math(i) <= a(j + 1) then m(j) = m(j) + 1
next j
next i
少一個end if
15樓:匿名使用者
同樓上,你上個end if.
寫**最好能縮排和對齊,不然你會遺漏的,看著也不方便.
16樓:
在end if 後面再加個 end if
關於vb巢狀塊if語句的問題
17樓:網海1書生
private sub form_click()score = val(inputbox("輸入成績"))if score >= 60 then
if score >= 85 then
st = "優秀"
else
st = "合格"
end if
else
st = "不合格"
end if
print st
end sub
18樓:司經賦庚妃
ifscore>=60
then
....
else
ifscore>=85
then
....
else
.....
endif
st>60
的當然不會小於49,巢狀以後,輸入49
當然就不顯示了,因為49<60
在最外層的if語句就被排除了。不會執行if內部的語句了。
19樓:歸萱
private sub form_click()dim score, st
score = inputbox("輸入成績")if isnumeric(score) thenscore = val(score)
else
msgbox "輸入一個有效的數字!"
exit sub
end if
if score >= 60 then
if score > 100 then
st = "無效的分數"
elseif score >= 85 thenst = "優秀"
else
st = "合格"
end if
else
if score < 0 then
st = "無效的分數"
else
st = "不合格"
end if
end if
print st
end sub
20樓:匿名使用者
因為你把
if score < 60 then
st = "不合格"
end if
這段寫在了最後一個end if裡面。只要把那段程式和輸出語句寫拉出到你現在的最後一個
end if之後就可以了。
寫巢狀格式的時候一定要注意。
21樓:扣
因為少了一個end if
請教在vb中如何判斷null值,vb上如何判斷空值
哈哈抄,給你說啊vb裡的東西有點襲奇怪,如果它是null的,那麼你直接用 就可以判斷了也就是說你可以這樣寫 if sss then end if 不信你可以試 注意,如果sss的型別是數值型別的,就是等於0而不是null vb 裡不象vc有null 這個值但是他有 vbnullstring 一樣可以...
Vb的Call語句是什麼來的,vb中的call有什麼用???
vb裡call用來呼叫函式或者過程,不過那是過去的用法了。在vb6裡只要把過程名或者函式名寫在要執行的地方就行了,很久以前是要在前面加上call的 過程sub subpro a,b c a b end sub 函式function funpro a,b as integerfunpro a b en...
在vb中min是什麼型別的變數,vb中變數有哪些型別?
1 vb6支援的資料型別,以及儲存空間大小與範圍 資料型別 儲存空間大小 範圍 byte 1 個位元組 0 到 255 boolean 2 個位元組 true 或 false integer 2 個位元組 32,768 到 32,767 long 長整型 4 個位元組 2,147,483,648 到...