Unregelmäßiger Laufzeit-Fehler 424 Internetabfrage
26.06.2017 17:51:41
Marco
ich habe einen Code mit dem ich Dateien von dieser Seite herunterladen kann: https://www.regelleistung.net/ext/tender/
Sub MRLOrder()
Dim wbAE As String
Dim wkshAE As String
Dim matchday As String
Dim myDate As String
Dim myYear As String
Dim myMonth As String
Dim myDay As String
Dim OrderType As String
OrderType = "MRL"
wbAE = ActiveWorkbook.Name
wkshAE = ActiveSheet.Name
myDate = Workbooks(wbAE).Sheets("Tabelle1").Range("B1")
myYear = Format(Year(myDate), "0000")
myMonth = Format(Month(myDate), "00")
myDay = Format(Day(myDate), "00")
Dim ie As Object, daten As Object, zeile As Object, zelle As Object, Startdate As Date
Dim lZeile As Long, lSpalte As Long, anzahlTage As Integer, i As Integer, my_data As Object
Startdate = CDate(myDate)
Set ie = CreateObject("InternetExplorer.Application")
ie.Visible = True
ie.navigate "https://www.regelleistung.net/ext/tender/"
While ie.Busy
DoEvents
Wend
ie.document.getElementById("form-type").Value = "3" 'Minutenreserveleistung
ie.document.getElementById("form-from-date").Value = CStr(CDate(Startdate))
ie.document.getElementById("submit-button").Click
Set my_data = ie.document.getElementById("tender-table").getElementsByTagName("a")
Dim link
Dim strNumber As String
Dim arrLinks(1) As String
i = 1
For Each link In my_data
If i = 1 Then
arrLinks(i) = link.href
End If
i = i + 1
Next
ie.Quit
ActiveSheet.Cells(1, 4).Value = Right(arrLinks(1), 4)
strNumber = Right(arrLinks(1), 4)
Call MeritOrder(strNumber, myYear, myMonth, myDay, OrderType)
End Sub
Der Code macht auch das was er tun soll. Mein Problem ist, dass ich in unregelmäßigen Abständen den "Laufzeit-Fehler 424: Object erforderlich" erhalte. Beispielsweise kann ich drei Mal hintereinander das Makro ausführen, ehe dann vier Versuche hintereinander mit den Problem abgebrochen werden. Aus dem Debuggen-Modus ist ersichtlich, dass der Code immer an einen dieser Stellen hängen bleibt:
ie.document.getElementById("form-type").Value = "3" 'Minutenreserveleistung
ie.document.getElementById("form-from-date").Value = CStr(CDate(Startdate))
ie.document.getElementById("submit-button").Click
Set my_data = ie.document.getElementById("tender-table").getElementsByTagName("a")
Was ist bei meinem Code nun noch genau falsch?