Excel에서 웹 서비스를 호출하십시오
-
19-08-2019 - |
문제
Excel 2007의 VBA 모듈에서 웹 서비스를 호출 할 수 있습니까? 그렇다면 코드 스 니펫이 있습니까? 웹 참조를 어떻게 추가합니까?
해결책
그래 넌 할수있어!
나는 그렇게 한 프로젝트를 수행했습니다 (의견 참조). 불행히도 그 중 하나의 코드 샘플은 없지만 인터넷 검색은 다음을 공개했습니다.
Excel 및 VBA를 사용하여 여러 웹 서비스의 데이터를 통합하는 방법
다른 팁
다음은 MS의 개요입니다.
Microsoft Excel Office 2007에서 "웹 서비스 참조 도구"플러그인을 설치하십시오. WSDL을 사용하고 웹 서비스를 추가하십시오. 모듈의 다음 코드를 사용하여 웹 서비스에서 필요한 데이터를 가져 오십시오.
Sub Demo()
Dim XDoc As MSXML2.DOMDocument
Dim xEmpDetails As MSXML2.IXMLDOMNode
Dim xParent As MSXML2.IXMLDOMNode
Dim xChild As MSXML2.IXMLDOMNode
Dim query As String
Dim Col, Row As Integer
Dim objWS As New clsws_GlobalWeather
Set XDoc = New MSXML2.DOMDocument
XDoc.async = False
XDoc.validateOnParse = False
query = objWS.wsm_GetCitiesByCountry("india")
If Not XDoc.LoadXML(query) Then 'strXML is the string with XML'
Err.Raise XDoc.parseError.ErrorCode, , XDoc.parseError.reason
End If
XDoc.LoadXML (query)
Set xEmpDetails = XDoc.DocumentElement
Set xParent = xEmpDetails.FirstChild
Worksheets("Sheet3").Cells(1, 1).Value = "Country"
Worksheets("Sheet3").Cells(1, 1).Interior.Color = RGB(65, 105, 225)
Worksheets("Sheet3").Cells(1, 2).Value = "City"
Worksheets("Sheet3").Cells(1, 2).Interior.Color = RGB(65, 105, 225)
Row = 2
Col = 1
For Each xParent In xEmpDetails.ChildNodes
For Each xChild In xParent.ChildNodes
Worksheets("Sheet3").Cells(Row, Col).Value = xChild.Text
Col = Col + 1
Next xChild
Row = Row + 1
Col = 1
Next xParent
End Sub
제휴하지 않습니다 StackOverflow