Я написал макрос в VBA для Excel 2010 для извлечения данных из API, который возвращает XML.Я делаю это добровольно, чтобы помочь моей жене и ее коллегам выполнять большую часть ручной работы.Итак, макрос используется в корпоративной среде, где настройки безопасности не в моих руках, и, поскольку я никогда не работал в корпоративной среде, я также понятия не имею, какие есть возможности.
Однако ИТ-специалистызаявили, что готовы помочь, но понятия не имеют, как это исправить.Поэтому мне интересно, может ли кто-нибудь здесь указать правильное направление, как заставить это работать на всех ПК.
Код приведен ниже, и он работает на домашних ПК всех коллег моей жены и моего собственноготоже.Это также работает на некоторых рабочих ПК, но на некоторых нет.Код не выполняется в части objDoc.Load
, он показывает мое сообщение об ошибке:
MsgBox ("There was an error when connecting to the API)
Интересно, есть ли корпоративные настройки или индивидуальные настройки Excel, которые блокируют доступ к внешним URL-адресам в макросах.Я не удивлюсь, так как это будет хорошая безопасность, но я думаю, что должен быть способ добавить URL-адрес в белый список?
У кого-нибудь есть идеи, как это можно исправить?Либо в коде, либо в настройках Excel 2010, либо в любых других корпоративных настройках Office, о которых я не знаю?
Dim strUrl as String
Dim objDoc As Object
Set objDoc = CreateObject("MSXML2.DOMDocument")
objDoc.async = False
strUrl = {api URL}
If objDoc.Load(strUrl) Then
'it worked!
Else
MsgBox ("There was an error when connecting to the API)
Exit Function
End If