Hast du das mal nachgeschaut, ob du auf ein Recordset zugreifst, das bereits mit .close geschlossen wurde? Oder legst du eine Abfrage auf ein Recordset, das noch NICHT geschlossen wurde?
Die MSDN schlägt auch noch andere Probleme vor, z.B. ein SELECT mit einer TEXT oder BLOB Spalte, die NICHT als letztes abgefragt wurde sondern mit den anderen Spalten gemischt ist, also in anschaulich:
SELECT int, int, text, int
statt
SELECT int, int, int, text
Ich weiß nicht, irgendwie bekomme ich diesen Fehler nicht weg. Ich benutze immer das gleiche Recordset. Es wird erst am Ende geschlossen. Mit unterschiedlichen RS-Namen geht es auch nicht.