Hi, hallo
in den mir bekannten Fällen, entsteht dieser Fehler, wenn man versucht einen DBNULL auszuwerten (gegen einen nicht DBNull).
Das Problem liegt an der Schleifenbedingung, weil beide Bereiche ausgewertet werden und nicht nur der erste.
wenn ich dein Problem richtig erkenne, solltest du mit SHAPED Recordsets besser fahren.
sql = "SHAPE {SELECT iID,feld1,feld2 FROM table1 ORDER BY feld3 ASC} APPEND ({SELECT oID,refID,feldX1,feldX2 FROM table2} RELATE iID to refID) as subset"
set ORs = conn.execute(sql)
DO until ORs.eof
.....
set SubRs = ORs("subset").Value
DO until SubRs.eof
..............
SubRs.MoveNext
Loop
set SubRs = nothing
ORs.MoveNext
loop
damit kann man schöne geschachtelte Recordsets bauen ... geht imho nur via MS' OLEDB (JET und SQL).
cnnStr = "Provider=MSDataShape;Data Provider=Microsoft.Jet.OleDB.4.0;Data Source=...;"
der connection string muß etwas umgebaut werden, siehe ebendiges Muster.
Sehr viel weitere Infos findest du im MSDN.
Tschau, tschüß,
Frank