2015-12-07 2 views
0

Я написал короткий макрос [ниже], чтобы протестировать GET-вызов. Этот макрос отлично подходит для нескольких человек, которые его протестировали, однако один человек (используя ту же версию excel - 2013) получает ошибку тайм-аута. Я разрешил Excel подключаться к Интернету в настройках и активировать макросы. Любые предложения приветствуются.Excel Macro http GET не подключается к интернету

Спасибо!

Set objHTTP = CreateObject("Msxml2.ServerXMLHTTP.6.0") 
Dim result As String 
URL = "http://www.google.com" 
With objHTTP 
    .Open "GET", URL, False 
    .SetRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" 
    .send ("") 
End With 
+0

есть прокси-сервер между ними? Это объясняет, что один пользователь получает тайм-аут. Я не уверен, как настроить прокси для XMLHTTP, поскольку я всегда использую объект WinHttpRequest. Там у вас есть метод setProxy. Не уверен, что объект запроса XML имеет то же самое. – cboden

+0

Проверьте, подключен ли кабель Ethernet (извините, не смог удержаться). –

+0

Попробуйте удалить '(" ")' после команды отправки, которая не нужна и вызовет ненужное оценка пустой строки - это не должно быть причиной проблемы, но не помешает попробовать. Еще одно замечание: все, что вы описали, указывает на то, что это проблема с ПК пользователя, а не с кодом - в этом случае, возможно, нам нечего советовать здесь ... –

ответ

0

Изменить тип объекта: Set objHTTP = CreateObject ("Microsoft.XMLHTTP") Надеюсь, что это поможет!

+0

Если я изменю тип объекта на это, я получаю сообщение об ошибке «доступ запрещен» на всех проверенных компьютерах. – Julie

+1

То же самое, но использовать 'Set objHTTP = CreateObject (« MSXML2.XMLHTTP.6.0 »)' Пространство имен Microsoft не устарело, а «XMLHTTP» является синонимом более старой версии от MSXML2 версии 3.0. См. [Здесь] (https://msdn.microsoft.com/en-us/library/ms764622 (v = vs.85) .aspx) для списка ProgID – barrowc

Смежные вопросы