EXCEL VBA:暂停“循环”
一般问题…
如果我暂停/退出/中断我的VBA代码(基于Excel)中的“For”循环存在什么危险?
这是我的代码:
For i = 1 to Sheets.Count 'check stuff 'do stuff if MsgBox("blah blah", vbyesnocancel, "blah") = vbyes then 'do stuff GoTo loopescape End if Next loopescape: 'rest of code
基本上,我有我的代码构build的方式提前退出for循环(基于用户的input)。 我只是想知道这是否会让我的程序易受崩溃(或其他危险)的影响。
那么,你认为中断/暂停/退出“for”循环可能会有问题吗?
谢谢,
埃利亚斯
没关系。 可以使用GoTo退出循环。 尽pipe使用GoTo跳转到“For”循环并不好。 (根据循环variables数据types跳转,似乎会产生一个运行时错误,说'For'循环没有被初始化,或者默默无法循环。
但是您不需要使用GoTo退出。 这正是Exit For
语句的用途:
If MsgBox("blah blah", vbYesNoCancel, "blah") = vbYes Then 'do stuff Exit For End If