vba обработчик ошибок

интернет программирование php excel VBA

WScript.Sleep 100
Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP")
oXMLHTTP.Open "GET", "http://**********/например.tpl", 0'адрес сайта
oXMLHTTP.Send
Set oADOStream = CreateObject("ADODB.Stream")
oADOStream.Mode = 3
oADOStream.Type = 1
oADOStream.Open
oADOStream.Write oXMLHTTP.responseBody
oADOStream.SaveToFile "C:\закачки", 2'куда файл сохранять


Как сделать так, что когда адрес недоступен или нет подключения к инету, то не вылазило бы окно с ошибкой и кодом?
Ответы:
Сменить ЯП. Это реально единственный вариант. Ну, не предусмотрено такое в VBA.
On Error GoTo Метка
или
On Error Resume Next
М. Алексей прав. Писать нужно так:
Sub ProgramName
Dim ... ' Здесь описываешь свои переменные
On Error GoTo LabelError ' Эта строка должна быть в самом начале программы!
... ' Тут идет
... ' твоя программа
LabelContinue:
... ' продолжение после ошибки
Exit Sub ' Вместо End Sub
LabelError: ' Это та самая метка, куда ты попадаешь при ошибке
... ' Тут ты
... ' делаешь то, что положено
... ' при возникновении ошибки
Resume Next ' Переход в основную программу на строку, следующую после ошибочной
Resume LabelContinue ' ИЛИ переход на какую-то метку внутри основной программы
End Sub


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.