Ich möchte meinen Lieferstatus für meine regulären Kurier von verschiedenen Dienstleister wie Blue Dart zu automatisieren.nicht EXPORT Daten von aktuellen offenen Webseite mit VBA
Ich habe Docket-Nummern; Ich habe das gleiche mit VBA versucht, aber es ist nicht in der Lage, Daten von der Webseite zu holen.
Mein Code geben Sie die Docket-Nummer aus der Zelle auf der Startseite ein, dann wird auf eine andere Seite umgeleitet, auf der der Lieferstatus in der Tabelle angegeben ist.
Sub GetCourseList()
Dim IE As Object
Set IE = CreateObject("InternetExplorer.Application")
Dim IEWindows As SHDocVw.ShellWindows
Dim IEwindow As SHDocVw.InternetExplorer
Dim IEDocument As MSHTML.HTMLDocument
Dim BreadcrumbDiv As MSHTML.HTMLElementCollection
Set IEWindows = New SHDocVw.ShellWindows
'create new instance of IE. use reference to return current open IE if
'you want to use open IE window. Easiest way I know of is via title bar.
IE.Navigate "http://www.bluedart.com/maintracking.html"
'go to web page listed inside quotes
IE.Visible = True
While IE.busy
DoEvents 'wait until IE is done loading page.
Wend
IE.Document.All("numbers").Value = ThisWorkbook.Sheets("sheet1").Range("A1")
Application.SendKeys "~"
Dim URL As String
Dim qt As QueryTable
Dim ws As Worksheet
Set ws = Worksheets.Add
For Each IEwindow In IEWindows
If InStr(IEwindow.LocationURL, "your URL or some unique string") <> 0 Then ' Found it
Set IEDocument = IEwindow.Document
URL = IEwindow.LocationURL
Set qt = ws.QueryTables.Add(_
Connection:="URL;" & URL, _
Destination:=Range("F1"))
With qt
.RefreshOnFileOpen = True
.Name = "bluedart"
.FieldNames = True
.WebSelectionType = xlAllTables
.Refresh BackgroundQuery:=False
End With
End If
Next
End Sub
Wir haben keine Werte von Ihrem Blatt, um es zu testen, und es gibt keine Erwähnung, was genau nicht funktioniert. Haben Sie einen Fehler in einer Zeile? Verwenden Sie auch 'Option Explicit' oben auf der Prozedur 'While IE.busy oder IE.Readystate <> 4', 'ThisWorkbook.Sheets (" sheet1 "). Bereich (" A1 "). Value2' und vermeiden Sie' SendKeys' wie es nicht zuverlässig ist. Dies sind nur gute Praktiken, keine direkte Lösung für dieses spezielle Problem. –
ZB von Docket-Nummer zum Verfolgen von 50419480764 oder 50419669171; Ich bekomme keinen Fehler, aber es holt nicht die Daten, als ob es leer ist – Eager