返回列表 上一主題 發帖

[發問] call 模組後符合條件時,如何停止程式碼執行?

回復 3# c_c_lai

c_c_lai大大,您好:
您的方法已經測試過了,把End移除掉後,表單內的程式碼依舊會執行,我的需求是先Call模組程式碼執行,符合條件後,連同表單中的程式碼一起停止執行,不好意思喔!
我是斯多

TOP

回復 1# reangame
你的tutu可以改用function並回傳tutu的執行狀況給呼叫它的地方,再判斷該怎麼跳出。

如:
  1. Function tutu() as boolean
  2.     Set sh = Sheets("開休市日期表")
  3.     Set r = sh.Columns("B").Find(md)
  4.     If Not r Is Nothing Then
  5.         md = ""
  6.     End If
  7.     If week = "星期六" Or week = "星期日" Or md = "" Then
  8.         MsgBox "所選日期為未開盤日,請重新選擇!", 0, "系統訊息"
  9.         tutu = false
  10.     else
  11.         tutu = true
  12.     End If
  13. End Function
複製代碼
呼叫tutu的表單按鈕:
  1. Private Sub CommandButton1_Click()
  2.     if not tutu then exit sub
  3. End Sub
複製代碼

TOP

補充一下,問題應該是出在代碼第10行,把End更改為Exit  sub時,只會停止模組的程式碼,還是會繼續執行表單 ...
reangame 發表於 2014-5-22 00:07

把第十行移除就行了。
If ...... End If 執行完畢程式碼便會往下執行,直到 End Sub 即行跳離該程式模組 (Sub tutu()  ~  End Sub)。

TOP

補充一下,問題應該是出在代碼第10行,把End更改為Exit  sub時,只會停止模組的程式碼,還是會繼續執行表單的程式碼,如何全都停止又不關閉表單?
我是斯多

TOP

        靜思自在 : 對父母要知恩,感恩、報恩。
返回列表 上一主題