Veröffentlicht 28. November 200024 j moin FI*'s, Folgendes Problem: Der folgende Code ... Dim DB As Database Dim RS As Recordset Set DB = CurrentDb Set RS = DB.OpenRecordset("Tabelle") RS.MoveFirst If Me.CurrentRecord = RS.RecordCount Then MsgBox "HALLO" End If ... liefert mir in sofern einen Fehler, das ich bei drei vorhandenen Datensätzen, in der If- Abfrage als Ergebnis "True" bekomme und deshalb eine MessageBox mit der Nachricht "Hallo". Normalerweise müsste es aber False ergeben, denn 1 <> 3. Weiß einer von euch, wie ich Access zum richtigen Zählen ermutigen kann? ------------------ mfg maddin
28. November 200024 j .recordcount kannst du nur abfragen, wenn du die tabelle mit dbOpenTable geöffnet hast. Dynasets und Snapshots bauen sich dynamisch auf, und liefern erst das richtige ergebnis, wenn du .movelast aufgerufen hast. die tabelle kannst du aber ganz einfach so durchlaufen: set rs = currentdb.openrecordset("tabelle1") rs.movefirst while not rs.eof debug.print cstr(rs.absoluteposition) & _ ":" & _ cstr(rs.fields(0).value) rs.movenext wend oder so... set rs = currentdb.openrecordset("tabelle1") rs.movelast: rs.movefirst for i = 1 to rs.recordcount debug.print cstr(rs.absoluteposition) & _ ":" & _ cstr(rs.fields(0).value) rs.movenext next guckst du zählt demn access jetzt
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.