我是否需要为每个请求创建一个新的 CreateObject("MSXML2.XMLHTTP") 还是应该在电子表格的整个生命周期内存储它?

问题描述

当单击 Excel 中的按钮时,我执行 GET:

Set hReq = CreateObject("MSXML2.XMLHTTP")
    With hReq
        .Open "GET",url,False
        .Send
    End With

这是我从示例中抓取的一些代码

这个工作表会做很多 API 相关的调用。我应该将 hReq 存储为全局对象并创建一次,还是每次单击按钮一次?

解决方法

Dim hReq As New MSXML2.XMLHTTP '* Requires tools reference to `Microsoft XML,v3.0`

With hReq
    .Open "GET",url,False
    .Send
End With

鉴于有关丢失引用的评论,我是否可以指出,如果旧对象丢失,将 New 放在 Dim 语句中将创建一个新对象。

除此之外,您可以回收该对象。