Um mehrere Spalten aus einem Kombifeld in eine Tabelle auszugeben, habe ich folgendes eingegeben:
Private Sub Form_AfterInsert()
Dim strAngebot As String, strAngebotBezeichnung As String, strKostenstelle As String, strSQL As String
strAngebot = Me!Kombinationsfeld0.Column(3)
strAngebotBezeichnung = Me!Kombinationsfeld0.Column(2)
strKostenstelle = Me!Kombinationsfeld0.Column(5)
strSQL = "INSERT INTO Kosten(Angebot, AngebotBezeichnung,Kostenstelle)VALUES('" & strAngebot & "','" & strAngebotBezeichnung & "','" & strKostenstelle & "')"
DoCmd.RunSQL strSQL
End Sub
Das funktioniert recht gut ;)
Nun möchte ich über das Formular noch weitere Daten eingeben, die in der Tabelle im gleichen Datensatz eingepflegt werden müssen. Das funktioniert nun nicht :(
Es legt immer wieder eine neue Zeile an......
Für eure Hilfe bin ich sehr dankbar
Hallo,
versteh diese Vorgehensweise nicht...
Nimm doch einfach ein gebundenes Formular ....
Ansonsten nimmt man zur Aktualisierung eines vorhandenen Datensatzes ein SQL-Update-Statement...
Ich verstehe meine Vorgehensweise auch nicht immer ;D
Mit dem gebundenen Formular kann ich mein Problem nicht lösen.
In der Tabelle "Kostenstellen" sind u.a. das Angebot, die zu bebuchende Kostenstelle usw. aufgeführt. Mittels Auswahl im Formular soll nur das Angebot erscheinen (Kombinationsfeld). Alle weiteren Daten sollen ohne im Formular angezeigt zu werden, in der Tabelle "Kosten" abgespeichert werden.
Zusätzlich müssen noch weitere für die spätere Berechnung relevante Daten in der Tabelle "Kosten" (im gleichen Datensatz) eingesetzt werden.
Hallo,
warum soll hier keine gebundenes Formular verwendet werden können?
Die verwendeten Tabelle müssen ja eine Beziehung haben. Dann kannst Du ein gebundenes Formular verwenden das auf eine Abfrage basiert die die beteiligten Tabellen beinhaltet.
In einer korrekt aufgebauten DB kann man alles mit gebundenen Formularen erledigen.
Hi,
das sieht so aus, als würdest du redundante Datenführung betreiben, denn wozu brauchst du die Spalten des Kombifeldes in deiner Kostentabelle, wenn sie doch offensichtlich bereits woanders zu finden sind. Gespeichert wird lediglich der Fremdschlüssel, über den der Zugriff auf die Detaildaten jederzeit möglich ist.