Я только что закончил большой код VBA, который в основном происходит на странице интрасети с некоторыми странными свойствами (подробнее см. Мой previous post).Проблемы с выпуском VBA
Код довольно тяжелый, и когда я запускаю его шаг за шагом (F8), он работает, но если я пытаюсь запустить все это, я получаю переменную объекта или с переменной блока не установлена .
Проблема в том, что эта ошибка не всегда появляется в одном месте в коде.
То, что я пытался сделать до сих пор:
Everytime Я нажимаю на элемент веб-страницы, выберите новое окно или любое другое действие, я ждал HTMLDocument страницы и саму страницу чтобы быть в состоянии готовности:
Do: Loop Until doc.readyState = "complete"
иSub WaitWhileBusy(ie As SHDocVw.InternetExplorer) While ie.Busy Or ie.readyState <> READYSTATE_COMPLETE DoEvents Wend End Sub
Так что я просто распространение некоторых из этих «контрольных точек» здесь и там весь код, но это не влияет на этот вопрос вообще.
- Решение, которое у меня есть сейчас, но которое мне совсем не нравится, заключается в том, чтобы поместить весь код в цикл, пока появляется ошибка, и только выходит, когда конец код был достигнут ....
Любые идеи о том, как с этим бороться?