Det man kan ikke give et simpelt svar på. Du skal kigge på, hvordan man bruger SOAP/REST fra Excel VBA (det er ikke helt simeplt, men naturligvis muligt).
Der findes forskellige eksempler på nettet
Option Explicit
Sub DoIt()
Dim sURL As String
Dim sEnv As String
Dim xmlhtp As New MSXML2.XMLHTTP40
Dim xmlDoc As New DOMDocument
sURL = "[URL="
http://webservices.gama-system.com/exchangerates.asmx?op=CurrentConvertToEUR"]http://webservices.gama-system.com/exchangerates.asmx?op=CurrentConvertToEUR[/URL]" sEnv = "<?xml version=""1.0"" encoding=""utf-8""?>"
sEnv = sEnv & "<soap:Envelope xmlns:xsi=""[URL="
http://www.w3.org/2001/XMLSchema-instance"]http://www.w3.org/2001/XMLSchema-instance[/URL]"" xmlns:xsd=""[URL="
http://www.w3.org/2001/XMLSchema"]http://www.w3.org/2001/XMLSchema[/URL]"" xmlns:soap=""[URL="
http://schemas.xmlsoap.org/soap/envelope/"]http://schemas.xmlsoap.org/soap/envelope/[/URL]"">" sEnv = sEnv & " <soap:Body>"
sEnv = sEnv & " <CurrentConvertToEUR xmlns=""[URL="
http://www.gama-system.com/webservices"]http://www.gama-system.com/webservices[/URL]"">" sEnv = sEnv & " <dcmEUR>100</dcmEUR>"
sEnv = sEnv & " <strBank>ING</strBank>"
sEnv = sEnv & " <strCurrency>USD</strCurrency>"
sEnv = sEnv & " <intRank>1</intRank>"
sEnv = sEnv & " </CurrentConvertToEUR>"
sEnv = sEnv & " </soap:Body>"
sEnv = sEnv & "</soap:Envelope>"
With xmlhtp
.Open "post", sURL, False
.setRequestHeader "Host", "webservices.gama-system.com"
.setRequestHeader "Content-Type", "text/xml; charset=utf-8"
.setRequestHeader "soapAction", "[URL="
http://www.gama-system.com/webservices/CurrentConvertToEUR"]http://www.gama-system.com/webservices/CurrentConvertToEUR[/URL]" .setRequestHeader "Accept-encoding", "zip"
.send sEnv
xmlDoc.loadXML .responseText
MsgBox .responseText
End With
'xmlDoc.Save ThisWorkbook.Path & "\WebQueryResult.xml"
End Sub
https://stackoverflow.com/questions/26468584/excel-vba-loop-with-sending-request-to-api