vb中exit sub的問題,vb中關於exit sub問題

2022-08-22 08:42:15 字數 5761 閱讀 6460

1樓:

第二個的錯誤在於如果專案存在,有可能還會新增,例如:

combo1.text =「a」

第一項是「a」

第二項是「b」

第三項是「a」

.....

第n-1項是「c」

第n項是「a」

在檢測到第二項,由於不是a,就會新增一個a,檢測到第n-1項,由於不是a,再增加一個a等等,因此,凡是和combo1.text 內容不符的專案就會新增。

第一個程式就不存在這個問題,當檢測到專案存在就退出這個過程(注意:exit sub是退出過程,不是退出迴圈,退出迴圈是exit for),因此不會再新增新的專案了。

2樓:匿名使用者

exit sub是退出過程,答案已經知道了(知道輸入項已在組合框中)就沒必要再試其他的了。

當然你繼續試也可以,不過那將浪費很多的系統資源和時間

3樓:匿名使用者

exit sub 是使程式退出此過程

vb中關於exit sub問題

4樓:匿名使用者

exit sub 的作用是結抄束當前的過程bai

,不再執行後續程式。

針對本程du序,exit sub 的作用是檢查到"未選zhi擇該新增的項dao目"或"專案已經存在"的時候,就不再執行 list2.additem (list1.list(list1.

listindex))

5樓:匿名使用者

舉個例子:

private sub command1_click()msgbox "aa"

'goto abc

exit sub

abc:

msgbox "bb"

end sub

上面那個程式預設的話執行到exit sub 就結束了。執行後只彈出內aa這個對話方塊

如果把容'goto abc前面的"'"去掉,那就會出現aa和bb兩個對話方塊。

在這裡,exit sub 就可以看做是一個end sub

6樓:匿名使用者

例如bai

private sub hello()

i=0if i=0 then

exit sub

end if

msgbox "hello"

end sub

此時不會出du現hello對話方塊

zhi 用了

daoexit sub 後面的內程式都不容會被執行了

7樓:蘇鵬無敵

private sub command1_click()if list1.listindex = -1 thenmsgbox "請選擇項bai目du"

' exit sub

end if

for i = 0 to 20

if list1.list(list1.listindex) = list2.list(i) then

msgbox "¸該項已新增!zhi"

' exit sub

end if

next i

list2.additem (list1.list(list1.listindex))

end sub

其實對於if 只用

daoend if 就結束那專個判屬斷了

8樓:

建議設定斷點單步執行看看,很可能是先決條件不滿足或中間有未捕獲的錯誤,導致該永久段都沒有得到執行,而不是語句本身沒起作用。

vb 中,exit sub 疑問!

9樓:

1、退出的是子過程。

2、在主過程設定判斷,滿足後:exit subif ...... then

.......... '不滿足條件執行程式else

exit sub '滿足條件退出主過程end if

10樓:周海濤

退出的是子過程,需要把相關引數傳遞迴到主過程,然後在主過程判斷後執行

vb高手來,vb中exit sub的作用?

11樓:秋色烽火

exit do

exit for

exit function

exit sub

還有其它幾個同類是這樣的

意思是退出**體 執行其它操作

比如你上面的exit sub

其實是一個良好的編碼習慣 雖然在此處有和沒的關係不大一般exit 的用途如下面這樣

for i= 1 to 10

if i = 5 then

msgbox "i等於" & i

exit for

endif

next

這樣當i迴圈到5的時候就會退出不再繼續迴圈操作

12樓:匿名使用者

exit這個單詞就是退出,不用講吧.

exit sub就是退出過程退出sub過程式你試試下面的這個句子,使用者名稱和密碼都不要輸入字元private sub command1_click()if text1.text = "" thenmsgbox "請輸入使用者名稱!", vbokonly + vbcritical, "錯誤"

exit sub

if text2.text = "" thenmsgbox "請輸入密碼!", vbokonly + vbcritical, "錯誤"

end if

end if

end sub

13樓:匿名使用者

為什麼要那麼複雜呢??像下面這樣不好麼

private sub command1_click()

if text1.text = "" then

msgbox "請輸入使用者名稱!", vbokonly + vbcritical, "錯誤"

elseif text1.text = "wuwenshi" and text2.text = "123456" then

msgbox "你是合法使用者,歡迎進入!", vbokonly + vbinformation, "歡迎進入"

else

msgbox "使用者或密碼錯誤!", vbokonly + vbcritical, "錯誤"

text1.text = ""

text2.text = ""

end if

end sub

在vb中,exit sub和end sud有什麼區別?

14樓:匿名使用者

exit sub 可能 出現 在 sub 中

但 end sub 應該是 sub 的 最後語句

看 msdn

15樓:司徒驚月

一個是退出,一個是結束,end sub和sub是對應的,exit sub 一般是在程式中途退出

16樓:匿名使用者

exit sub用來跳出過程

end sud是過程結束的標誌

17樓:匿名使用者

無返回值的函式定義類似下面這種形式:

sub test(引數列表)

處理**

end sub

所以end sub是函式的結束標誌,而exit sub是用來退出函式的執行的,比如:

sub test()

處理**

if 發生錯誤,需要提前退出 then

exit sub

end if

處理**

end sub

vb如何可以做到在function中exit sub? 50

18樓:ts背後一刀兒

你的意思是,你在一個sub裡面巢狀了一個function唄,然後你在function執行的時候判斷到不需要繼續,就退出function唄,同時sub也退出唄!

那你可以通過function裡面的返回值來控制啊!先把返回值設定成一個初始值(或者是錯誤退出的值),執行正確就最後把正確的值返回。有問題就直接exit function 返回那個初始值,sub裡面判斷返回值,在exit sub。

你得注意程式過程體的界定,不能內外呼叫,只能傳遞值。

19樓:

哦,哈哈

exit是退出!

你在sub裡,自然是exit sub

在function裡,那肯定是exit function了啊!!

下次遇到for迴圈的時候,不要忘了用

exit for!呵呵

20樓:匿名使用者

你可以定義function為布林型,當他為真是繼續執行,為假時就exit sub即可。

比如private function abc() as boolean

21樓:

變通一下,執行函式後判斷一下

option explicit

dim b as boolean

private sub command1_click()b = false

dim i as integer

clsfor i = 0 to 10

print a(i)

if b then exit sub

next

end sub

private function a(a1 as integer) as integer

if a1 > 5 then b = truea = a1 * a1

end function

exit sub和 end sub區別?

22樓:匿名使用者

end sub 是一個過程的結束**(每一個sub中必須對應一個end sub)exit sub 是在過程內**執行時,可選擇性的退出過程執行(即不執行exit sub之後的**,相當於中途退出的意思),這不是必須的。如:private sub 特徵測試() dim i as integer for i=0 to 10 if i mod 3=0 then exit sub '這裡就是可選擇性的退出過程的執行了,這句執行後,最後msgbox就不會執行 else msgbox i end if next i msgbox "特徵測試完畢"end sub '過程結束**,這是sub必須的。

還有類似的function ...end function在c..c++..

c#等c類環境下過程結束標記是用「}」在delphi結束標記是 「end;」

vb中end sub可以出現在過程中代替exit sub麼?

23樓:

都是結束sub。

但end sub和sub sub_name是一一對應的,在一個sub過程中,只能出現一個,exit sub不同,相當於break,可以多次出現。

例如:sub test

if text1.text="1" thenexit sub '這裡就不能出現end subelse

'do nothing

end if

end sub '本處和最開始對應

所以不能代替。

vb中關於exit sub問題,VB 中的exit do 怎麼理解

exit sub 的作用是結抄束當前的過程bai 不再執行後續程式。針對本程du序,exit sub 的作用是檢查到 未選zhi擇該新增的項dao目 或 專案已經存在 的時候,就不再執行 list2.additem list1.list list1.listindex exit sub 在一來般情況...

VB程式中的問題,VB程式中的一個問題

1 我建議你好好看看書,這是很基礎的 2 a 定義的是一個陣列 3 0 代表的是a 陣列中的第一元素,也可以說是陣列中第一個變數 這樣說不太準確,可以這麼理解吧 4 每一個陣列a x 後面只要是寫等號,就是給這個陣列進行賦值的 例如你提問的 a 0 1 意思就是把1這個數賦值給a 0 因為你前面已經...

vb中關於日期函式的問題,VB中關於日期函式的問題

個人認為 執行結果不是因為cdate的作用強制轉換成日期,而是在於year 函式cdate就是字串強制轉換成日期型,比如text1.text 98 1 a cdate text1.text a就等於 1998 01 01 這就是cdate 函式的作用year 功能得到日期值中的年度 有效取值1000...