2013-06-04 78 views
0

你有任何的替代以下代碼:VBA代碼不應該再繼續

Do While IeNav.readyState <> READYSTATE_COMPLETE 
    DoEvents 
Loop 

由於這是醒目,我的VBA代碼沒有完全推出的網頁這是導致向前發展運行時錯誤。 PLease幫助我,如果您有任何建議

+0

您可以添加更多代碼來查看代碼的其他設置。 –

+0

readystate = READYSTATE_COMPLETE時頁面的哪些部分未呈現? –

回答

0

您可以使用Application.Wait來代替DoEvents。

Do While IeNav.readyState <> READYSTATE_COMPLETE 
    Application.Wait Now + TimeValue("0:00:01") 
Loop 

如果繼續使用Application.Wait你不妨check the remarks on MSDN關於它,因爲它可以禁用它在運行的時候一些使用。

+0

感謝您的迴應,這是有幫助的,但我們無法估計時間嗎?所以我會需要一些完美的東西,我的代碼不應該通過,除非網頁啓動.... – rajenderprasad

+0

它在循環內部,所以每當頁面沒有準備好時,它會等待另一秒鐘,然後再次嘗試。當頁面準備就緒時,它將離開循環,因此我建議在這種情況下一秒鐘就可以正常工作。 –