【发布时间】:2018-06-07 14:28:51
【问题描述】:
我在 VBA 中为 Excel 2010 编写了一个宏,用于从返回 XML 的 API 中检索数据。我自愿这样做是为了帮助我的妻子和她的同事免于做大量的体力劳动。所以,宏是在企业环境中使用的,我无法控制安全设置,并且从未在企业环境中工作过,我也不知道有什么可能性。
但是,IT 人员表示他们愿意提供帮助,但不知道如何解决。所以我想知道这里是否有人可以指出如何让它在所有 PC 上运行的正确方向。
代码如下,它适用于我妻子所有同事和我自己的家用电脑。它也适用于某些工作 PC,但不适用于某些 PC。 objDoc.Load 部分的代码失败,它显示了我的错误消息:
MsgBox ("There was an error when connecting to the API)
我想知道是否存在阻止访问宏中的外部 URL 的企业设置或个别 Excel 设置。我不会感到惊讶,因为这将是很好的安全性,但我想也应该有一种方法将 API 的 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
【问题讨论】:
-
您是否尝试过在故障机器上使用 API 测试器并查看您返回的消息?
标签: xml excel excel-2010 vba