Отправка Запросов HTTP с VBA из Word

Я пытаюсь отправить данные от документа Word до веб-страницы. Я нашел некоторый код, вставил его в новый модуль и сохранил его. Когда я выполняю его, я получаю "ошибку компиляции, определяемый пользователем тип, не определенный"

Мой код:

Sub http()

  Dim MyRequest As New WinHttpRequest

    MyRequest.Open "GET", _
    "http://www.google.com"

    ' Send Request.
    MyRequest.Send

    'And we get this response
    MsgBox MyRequest.ResponseText

End Sub
20
задан Grumpy says Reinstate Monica 22 January 2018 в 15:38
поделиться

3 ответа

Потенциальной альтернативой, позволяющей избежать выбора библиотеки, является использование объекта, например

Sub http()
Dim MyRequest As Object

    Set MyRequest = CreateObject("WinHttp.WinHttpRequest.5.1")
    MyRequest.Open "GET", _
    "http://www.google.com"

    ' Send Request.
    MyRequest.Send

    'And we get this response
    MsgBox MyRequest.ResponseText

End Sub
26
ответ дан 29 November 2019 в 23:19
поделиться

Вам необходимо установить ссылку на Microsoft WinHTTP Services в вашем проекте VBA (Инструменты -> Ссылки).

Вот как это будет выглядеть:

Кроме того, вы можете узнать больше о Microsoft WinHTTP Services версии 5.1 здесь .

21
ответ дан 29 November 2019 в 23:19
поделиться

Вам нужно изменить ваши ссылки (Tools=>References в окне кода). Найдите Microsoft WinHTTP Services, версия 5.1 (или новее) и поставьте галочку. Если вы используете Vista и office 2007, вам также может потребоваться сначала зарегистрировать его. Откройте окно команд от имени администратора и вставьте:

>regsvr32.exe "c:\windows\system32\winhttp.dll"

Должно быть написано, работает ли это.

2
ответ дан 29 November 2019 в 23:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: