Excel VBA принудительное отключение IE
В настоящее время я использую следующую подпрограмму, чтобы закрыть свой IE после автоматизации:
Public Sub CloseIE()
Dim Shell As Object
Dim IE As Object
Set Shell = CreateObject("Shell.Application")
For Each IE In Shell.Windows
If TypeName(IE.Document) = "HTMLDocument" Then
IE.Quit
End If
Next
End Sub
Это прекрасно работает, но проблема возникает, когда я пытаюсь запустить код IE снова, я получаю следующее:
Ошибка времени выполнения '-2147023706 (800704a6)':
Ошибка автоматизации
Выключение системы уже запланировано.
Через 20 секунд я могу перезапустить код. Есть ли способ «принудительного закрытия» IE, чтобы я мог запустить код снова сразу после ошибки?
РЕДАКТИРОВАТЬ:
Вот код, который инициирует IE:
Sub testSub()
Dim IE As Object, Doc As Object, strCode As String
Set IE = CreateObject("internetexplorer.application")
IE.Visible = True
IE.Navigate "website name"
Do While IE.ReadyState <> 4: DoEvents: Loop
Set Doc = CreateObject("htmlfile")
Set Doc = IE.Document
CODE HERE
CloseIE
End Sub