1. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

Datensatz per VBA erstellen und Autowert auslesen

Dieses Thema im Forum "Microsoft Access" wurde erstellt von Patrick2P, 9 März 2019.

  1. Patrick2P

    Patrick2P Benutzer

    Hallo Zusammen,

    ich habe dazu zwar etliches in Google gefunden, das will aber bei mir nicht so laifen wie es sollte.

    Folgende Lösung habe ich mehrfach in ähnlicher Weise gefunden:

    Public Sub PrimaerschluesselwertPerDAO()

    Dim db As DAO.Database
    Dim rst As DAO.Recordset

    Set db = CurrentDb
    Set rst = db.OpenRecordset("tblBeispiel", dbOpenDynaset)

    rst.AddNew
    rst!Testfeld = "Test"

    Debug.Print rst!ID

    rst.Update
    rst.Close
    Set rst = Nothing
    Set db = Nothing
    End Sub

    Wenn ich das aber laufen lasse ergibt rst!ID NULL. Das läuchtet auch ein, da der Autowert ja auch bei manueller EIngabe erst nach dem Update vergeben wird. Mache ich die rst!ID Abfrage aber erst nach dem Update, erhalte ich 1 als Wert, was auch nicht stimmt.

    Was mache ich falsch?

    Vielen Dank und viele Grüße

    Patrick
     
  2. ukulele

    ukulele Datenbank-Guru

    Da in dem Code kein SQL vorkommt kann ich dazu nichts sagen. Was hat es denn mit dem ! in rst!Testfeld und rst!ID aufsich?
     
  3. Kyron9000

    Kyron9000 Neuer Benutzer

    Hallo,
    denke, das die ID so einfach zu Verfügung stehen wird.

    With rst
    .AddNew
    !Testfeld = "Test"
    .Update
    .MoveLast
    Debug.Print !ID
    .Close
    End With
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden