从VBA调用https REST服务

我试图从这个rest服务获取数据。 我的浏览器,它工作正常。 现在我尝试在VBA中执行此操作以在Excel中显示数据

https://energidataservice.dk/api/action/datastore_search?resource_id=ec797392-7ba5-4c3a-b021-8ae302ac295a&limit=5

我相信这与https和TSL有关。 当我在C#中编写这个代码,并添加这一行它的作品。 我只是不知道如何在VBA中做到这一点

'ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 - object required Dim reader As New WinHttpRequest Dim json As New JSONParser Dim ws As Worksheet: Set ws = ActiveSheet Dim url As String url = ws.[EDS_URL] ' reader.Option(9) = 2720 - invalid procedure call reader.Open "GET", url, False reader.Send ' automation error 

没有TSL部分,我会在最后一行得到自动化错误

尝试这一点,如果有帮助,接受解决scheme

 Sub GetData() Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP") url = "https://www.energidataservice.dk/api/action/datastore_search?resource_id=ec797392-7ba5-4c3a-b021-8ae302ac295a&limit=5" objHTTP.Open "GET", url, False objHTTP.setRequestHeader "Content-Type", "text/json" objHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" objHTTP.setRequestHeader "User-Agent", "Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B405" objHTTP.send ("") Debug.Print objHTTP.Status If objHTTP.Status = "200" Then MsgBox (objHTTP.responseText) End If End Sub 

在这里输入图像说明