Jetzt könnt ihr mich glänzen lassen ;o)
Ein Kollege kam zu mir und hat das Problem, dass beim Zugriff auf eine QueryTable der Fehler 1004 mal abgefangen werden kann und mal eben nicht.
Ich selbst habe Null Ahnung über QueryTables und muss daher nachfragen. Unten seht ihr die Routine. Bei den angegebenen Adressen wird die 1004 das erste mal abgefangen, das zweite Mal leider nicht mehr. Woran könnte das liegen?
Gruß
Arthur
<pre>
Private Sub sub_test()
Dim qt As QueryTable
Dim str_url As String
Dim s_QS As Worksheet
Dim s_URL As Worksheet
Dim r_ac As Range
Dim r_UrlPrefix As Range
Set s_QS = Sheets("QT")
Set s_URL = Sheets("URL")
Set r_ac = s_URL.Range("cell_AccessCount")
For Each r_UrlPrefix In s_URL.Range("range_UrlStrings")
str_url = CStr(r_UrlPrefix.Value)
On Error GoTo WebFailed
Set qt = s_QS.QueryTables.Add(Connection:="url;" & str_url, _
Destination:=s_QS.Cells(1, 1))
With qt
.WebFormatting = xlAll
.WebSingleBlockTextImport = True
.MaintainConnection = False
.RobustConnect = xlNever
.Refresh (False) 'Hier tritt der Fehler 1004 auf
End With
r_ac = r_ac + 1
WebFailed:
On Error GoTo 0
MsgBox ("Fehler")
Next
s_QS.Select
End Sub</pre>