Option Explicit
Private Const STR_SOAP_RESPONSE1 As String = _
"<ResultSets>" & vbCrLf & _
" <ResultSet>" & vbCrLf & _
" <RowCount>1</RowCount>" & vbCrLf & _
" <Rows>" & vbCrLf & _
" <Row>" & vbCrLf & _
" <Columns>" & vbCrLf & _
" <Column>" & vbCrLf & _
" <Value>George Davis</Value>" & vbCrLf & _
" <Name>Employee</Name>" & vbCrLf & _
" </Column>" & vbCrLf & _
" <Column>" & vbCrLf & _
" <Value>3/7/2019 10:04:52 AM</Value>" & vbCrLf & _
" <Name>Begin_Time</Name>" & vbCrLf & _
" </Column>" & vbCrLf & _
" <Column>" & vbCrLf & _
" <Value>3829927</Value>" & vbCrLf & _
" <Name>Clockin_Key</Name>" & vbCrLf & _
" </Column>" & vbCrLf & _
" <Column>" & vbCrLf
Private Const STR_SOAP_RESPONSE2 As String = _
" <Value>Production</Value>" & vbCrLf & _
" <Name>Cost_Sub_Type</Name>" & vbCrLf & _
" </Column>" & vbCrLf & _
" <Column>" & vbCrLf & _
" <Value>cst.GeorgeD</Value>" & vbCrLf & _
" <Name>User_ID</Name>" & vbCrLf & _
" </Column>" & vbCrLf & _
" <Column>" & vbCrLf & _
" <Value>Davis</Value>" & vbCrLf & _
" <Name>Last_Name</Name>" & vbCrLf & _
" </Column>" & vbCrLf & _
" <Column>" & vbCrLf & _
" <Value>0</Value>" & vbCrLf & _
" <Name>Contract_Worker</Name>" & vbCrLf & _
" </Column>" & vbCrLf & _
" </Columns>" & vbCrLf & _
" </Row>" & vbCrLf & _
" </Rows>" & vbCrLf & _
" </ResultSet>" & vbCrLf & _
"</ResultSets>"
Private Sub Form_Load()
Dim oDoc As Object
Dim oNode As Object
With CreateObject("MSXML2.DOMDocument")
.LoadXml STR_SOAP_RESPONSE1 & STR_SOAP_RESPONSE2
Set oDoc = .documentElement
End With
'--- first <Column>
Set oNode = oDoc.selectSingleNode("/ResultSets/ResultSet/Rows/Row/Columns/Column")
Debug.Print oNode.Xml, Timer
'--- the same
Set oNode = oDoc.selectSingleNode("//Column")
Debug.Print oNode.Xml, Timer
'--- the <Column> with User_ID in <Name> child
Set oNode = oDoc.selectSingleNode("//Column[Name='User_ID']")
Debug.Print oNode.Xml, Timer
'--- the <Value> under <Column> with 'User_ID' in <Name> child
Set oNode = oDoc.selectSingleNode("//Column[Name='User_ID']/Value")
Debug.Print oNode.Xml, Timer
'--- only <Value>'s text
Debug.Print oNode.Text, Timer
End Sub