Probleme mit Recordset-Objekt -> nicht definier

Hallo an alle,

ich bin Neueinsteiger in der Access/VBA-Programmierung und habe ein Problem, das ich trotz Hilfe/Literatur/zahlreicher Code-Beispiele auf meinem Rechner nicht lösen kann:

Folgender Code…
>>
Sub AddNewPerson()

Dim dbsIOD As Database
Dim rstXREF As Recordset
’ Dim bla As Recordset
Dim strAKT_ID As String
Dim strRefIOD_ID As String

Set dbsIOD = CurrentDb
Set rstXREF = dbsIOD.OpenRecordset(„XREF_AKT_RefIOD“)
’ Set bla = dbsIOD.TableDefs(„XREF_AKT_RefIOD“).OpenRecordset()

strAKT_ID = „12“
strRefIOD_ID = „12“

With rstXREF
.AddNew
!AKT_ID = strAKT_ID
!RefIOD_ID = strRefIOD_ID
.Update
’ .Bookmark = .LastModified
Debug.Print "Neuer Datensatz: AKT_ID: " & !AKT_ID & "; RefIOD_ID: " & !RefIOD_ID
End With

rstXREF.Close
dbs.Close

End Sub
Verweise nicht markiert (=installiert?) war. Deshalb wurde das Database-Objekt in der Variablendeklaration nicht erkannt (*das* geht jetzt aber).
Auch werden in den Dim-Zeilen nach wie vor die Objekttypen „Database“ und „Recordset“ nicht mit blauer Schrift markiert.

Ich hoffe sehr auf Eure Hilfe und würde mich über einen Tipp oder eine Lösung freuen. Ansonsten muss ich es am Wochenende mal auf meinem Privat-PC versuchen.

Viele Grüße aus Frankfurt,
Jörg Müller

Hallo.

Was ist denn XREF_AKT_RefIOD? Eine Tabelle oder eine Abfrage?

Es ist normal ,dass ‚Recordset‘ und 'Database’nicht blau markiert werden.

Schöne Grüße aus Bremen

Leo

Hallo an alle,

Morgen.
Wenn die Tabelle/Abfrage XREF_AKT_RefIOD existiert, mal explizit auf DAO verweisen…

Dim dbsIOD As DAO.Database
Dim rstXREF As DAO.Recordset

ansonsten: gibt es die angegebene Tabelle/Abfrage???

Set rstXREF = dbsIOD.OpenRecordset(„XREF_AKT_RefIOD“)

dbs.Close

und hier sollte noch
Set rstXREF=Nothing
Set dbsIOD=Nothing
davor.

CU, Jan

Hallo Jan,

super! Vielen, vielen Dank. „DAO.Database“ war das Stichwort. Jetzt funktioniert es.

Mir ein Rätsel, warum das nicht in der Doku (und in einem Original Microsoft Press-Buch) deutlicher erwähnt wird. Wiviee solcher Kleinigkeiten und Feinheiten lauern da wohl noch auf einen Programmierer…?

Gruß,
Jörg

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Für so etwas gibt es z.B. die FAQ (http://www.donkarl.com - FAQ 7.1, 7.11 usw.)

Ansonsten: Man kann beliebige Namenskonflikte programmieren - wo und was das dann hängt, kann letztendlich niemand vorhersehen…

Gruß aus dem Norden
Reinhard Kraasch

(http://www.dbwiki.de - das Datenbank-Wiki)