2015-09-04 98 views
0

定期地,當我在Excel 2013的VBA中遇到運行時錯誤時,我的代碼停止運行。例如,當我進行下拉選擇時,Worksheet_Change(ByVal Target As Range)子代碼中的代碼不再執行。代碼在錯誤後停止運行

我試過在IDE中經常使用但並非總是重置按鈕,我必須關閉Excel並重新打開它,然後代碼纔會觸發。

必須有一種方法來重置,而不必通過所有這些。

+0

你應該發佈你的代碼和特定的錯誤信息,以便其他人可以更好地幫助你。 – Zak

回答

2

如果要設置

Application.EnableEvents = False 

和你的代碼崩潰之後,在一些點,但重置爲True之前,那麼任何事件將不再被捕獲。

即使在重置VB項目之後,False設置仍將保留。重置它的唯一方法是運行一些代碼將其設置回True

您可以從VBE立即窗格運行此:

Application.EnableEvents = True 

每次關閉事件在你的代碼處理,這是一個很好的做法,始終包括錯誤處理,這樣你就可以把之前的事件處理回你的代碼退出。

+0

謝謝你,就像你說的那樣工作。 – willlow1044