Makro läuft im Einzelschritt richtig, sonst falsch
08.06.2004 10:48:07
Peter
hier ist ein kleiner Ausschnitt aus meinem Code:
i = 1
For i = 1 To anzSys
If i = 1 Then
anzApps = 0
Else
anzApps = Application.WorksheetFunction.CountA(shApps.Range("A:A"))
End If
ziel = shApps.Cells(anzApps + 1, 1).Address
With shApps.QueryTables.Add(Connection:= _
"ODBC;DSN=...., Destination:=shApps.Range(ziel))
...
If i = 1 Then
.FieldNames = True
Else
.FieldNames = False
End If
anzSys ist vorher ermittelt, es handelt sich um eine Anzahl von Systemen, zu denen zugehörige Applikationen aus einer Datenbank abgefragt werden. Das Arbeitsblatt shApps wird vorher neu erstellt und ist leer. Demzufolge beginnt das erste Abfrageergebnis in $A$1. Bei dem 2. System (i=2) wird gezählt, wie viele Zeilen schon gefüllt sind (CountA) und die nächste Abfrage darunter plaziert.
Der Fehler, der nur beim normalen Durchlauf auftritt, nicht aber, wenn ich das Ganze im Einzelschrittmodus teste: die 2. Abfrage wird nicht unter die 1. plaziert, sondern daneben und zwar in Zeile 2, Zeile 1 bleibt leer, weil ab dem 2. Mal die Feldnamen nicht mehr ausgegeben werden.
Im Einzelschritt sieht alles so aus, wie ich es haben möchte, Überschrift in der ersten Zeile und alle Abfragen darunter.
Irgendwie habe ich einen Blackout und finde den Fehler nicht, also schon mal Danke für jeden Hinweis.
Gruß
Peter