Вы можете пропустить форму и go прямо на страницу результатов, когда я ее использую, автоматизация браузера никогда не работала так хорошо.
Следующая функция, когда предоставляется IEC, EDI и BillNumber вернут HTMLDocument, содержащий результат.
Ниже Sub Main
выведет необходимые данные в ближайшее окно. Я не уверен, как использовать XPath с результатом моей функции, поэтому я просто жестко закодировал местоположение.
Public Function GetDetail(ByVal IEC As String, ByVal EDI As String, ByVal ShippingBillNumber As String) As Object
Dim Request As Object: Set Request = CreateObject("MSXML2.serverXMLHTTP")
Dim Result As Object: Set Result = CreateObject("htmlfile")
Request.Open "POST", "http://dgftcom.nic.in/licasp/newsbdet.asp", False
Request.setRequestHeader "content-type", "application/x-www-form-urlencoded"
Request.send "D5=" & IEC & "&D8=" & EDI & "&T5=" & ShippingBillNumber & "&button1=SB-Detail"
Result.body.innerHTML = Request.responseText
Set GetDetail = Result
End Function
Sub Main()
Dim x As Object
Dim Data As Object
Set x = GetDetail("0392032449", "INBOM4", "3963373")
Set Data = x.getElementsByTagName("table")(4).getElementsByTagName("tr")(1).getElementsByTagName("td")
Debug.Print "Date: " & Split(Data(6).innerText, vbNewLine)(1)
Debug.Print "Status:" & Data(7).innerText
End Sub