Hallo :)
Ich habe folgendes Problem:
Ich habe eine Buchdatenbank geschrieben, die buchinformationen per isbn aus dem Internet nimmt
(Autor, Verlag, Buchtitel, Preis,..)
Nun bekomme ich das Formular jedoch nicht gespeichert (also gespeichert schon, doch wenn ich ein neues Buch eingebe, wird das erste Buch wieder überspeichert),.
Es bleibt also immer bei der ersten ID stehen...
Mein "Code" sieht folgendermaßen aus:
Private Sub Befehl37_Click() 'Datensatz speichern
Me.AllowEdits = True
DoCmd.RunCommand acCmdSaveRecord
'DoCmd.RunCommand acCmdClearAll
empty_boxes
Me.AllowEdits = True
MsgBox "Das Buch wurde gespeichert"
(ClearAll geht nicht xD, deshalb schrieb ich die Funktion "empty_boxes", die die Textboxen leert)
Vielen Dank im Voraus,
Liebe Grüße,
Karl
End Sub
Hallo,
du brauchst überhaupt keinen Code wenn du das Formular gebunden machst. Das bedeutet in den Formulareigenschaften->Datenherkunft wählst du die Tabelle aus in welche die Daten gespeichert werden. Das gleiche auch bei Feldern.
Wenn du das ungebunden per Code machen möchtest, mach es bitte richtig und verwende keine RunCommand-Anweisungen:
Dim db As DAO.Database
set db = Currentdb
db.Execute "Insert into Tabelle (Feld1, Feld2, Feld3) Values ('" & Me.Textfeld1 & "', " & Me.Zahlenfeld2 & ", '" & Me.Datumsfeld3 & "'"
set db = Nothing
Beachte bei Textfeld und Datumsfeld die einfachen Hochkommatas.
Deine Tabelle sollte einen ID (autowert) besitzen der automatisch ausgefüllt wird.
Gruß Andreas