Berechnetes Feld in Tabelle schreiben

Hallo Zusammen,

ich habe in einer Tabelle (Access 2000) die Felder „A“ und „B“.
In einer Abfrage habe ich aus dieser Tabelle beide Felder aufgenommen und ein weiteres Feld „C“ welches eine Berechnung aus „A“ und „B“ ist:
C:[A]+[B]
Über ein Formular (basierend auf dieser Abfrage) werden Werte in die Felder „A“ und „B“ aufgenommen.
Ich möchte nun dass der berechnete Inhalt des Feldes „C“ direkt nach Eingabe eines Datensatzes als Festwert zurück in meine Tabelle geschrieben wird, sodass in meiner Tabelle ein Feld „C“ existiert.

Wie geht das?

Vielen Dank im Voraus

Roland

Hallo, Roland!

ich habe in einer Tabelle (Access 2000) die Felder „A“ und
„B“.
In einer Abfrage habe ich aus dieser Tabelle beide Felder
aufgenommen und ein weiteres Feld „C“ welches eine Berechnung
aus „A“ und „B“ ist:
C:[A]+[B]
Über ein Formular (basierend auf dieser Abfrage) werden Werte
in die Felder „A“ und „B“ aufgenommen.
Ich möchte nun dass der berechnete Inhalt des Feldes „C“
direkt nach Eingabe eines Datensatzes als Festwert zurück in
meine Tabelle geschrieben wird, sodass in meiner Tabelle ein
Feld „C“ existiert.

Im wesentlichen muss das Feld C auch in der Tabelle vorhanden sein. Dann bastelst Du Dir entweder ein Textfeld ins Formular (wenn Du den Wert für C anzeigen lassen möchtest), welches an C gebunden ist, oder Du lässt es. Zum Speichern ist es nicht notwendig.

Dann würde ich ins BeforeUpdate des Formulars die Zeile Me(„C“) = Me(„A“) + Me(„B“) schreiben; ggf. natürlich ergänzt um Plausiprüfungen etc.

Wenn Du C eh nicht anzeigen lässt und zwischendrin nicht benötigst, kannst Du auch eine Update-Abfrage bauen und diese bei Bedarf (z. B. beim Schließen des Formulars oder auch wann immer Dir danach ist) aufrufen („UPDATE Tabelle SET C=A+B“).

Gruß, Manfred

Hallo Zusammen,

ich habe in einer Tabelle (Access 2000) die Felder „A“ und
„B“.
In einer Abfrage habe ich aus dieser Tabelle beide Felder
aufgenommen und ein weiteres Feld „C“ welches eine Berechnung
aus „A“ und „B“ ist:
C:[A]+[B]

Wenn du für die in der Tabelle vorhandenen DS das berechnete Feld C in der Tabelle speichern willst, einfach Feld C in der Tabelle anlegen und eine Aktualisierungsabfrage drüberlaufen lassen.

Über ein Formular (basierend auf dieser Abfrage) werden Werte
in die Felder „A“ und „B“ aufgenommen.
Ich möchte nun dass der berechnete Inhalt des Feldes „C“
direkt nach Eingabe eines Datensatzes als Festwert zurück in
meine Tabelle geschrieben wird, sodass in meiner Tabelle ein
Feld „C“ existiert.

Wenn du bei der Eingabe eines neuen DS (über das Formular) gleich die Berechnung und Speicherung durchführen willst, in der Tabelle Feld C anlegen und im Formular die Berechnung durchführen lassen (z.B. als Ereignisprozedur „Beim Verlassen“ von Feld B). Den Umweg über die Auswahlabfrage brauchst du eigentlich nicht, Datenquelle für das Formular kann direkt die Tabelle sein.

Steffen

Hi,
ich hatte das gleiche Problem. Habs dank dem Forum hier jetzt so gelöst:

  • Als erstes ist die Abfrage zur Berechnung nun eine Tabellenerstellungsabfrage(Programm wollte die Abfrage nicht direkt für die Aktualisierungsabfrage verwenden)

  • Dann hab ich eine Aktualisierungsabfrage, die das Feld der Zieltabelle mit dem Wert der neu erstellten Tabelle aktualisiert

  • Das ganze wird dann einfach nacheinander zur Ausführung auf den Button gelegt

MFG Michael