Berechnungen in Access-Tabellen

Ich arbeite mit Access 97 und möchte das Ergebnis verschiedener Berechnungen in einer Tabelle speichern. Nun habe ich bereits ein Formularfeld mit der Formel [Wert1] + [Wert2] angelegt, doch weigert sich Access, das Ergebnis in dem Feld [Summe] zu speichern. Wie kommt das Rechenergebnis aus dem Formular in die Datenbank?

Bei der Dateneingabe im Formular verwendet man in der Regel Steuerelemente, die fest mit dem Feld einer Tabelle verbunden sind. Wenn Sie also im Feld Wert1 des Formulars eine Zahl eingeben, speichert sie Access automatisch in der Tabelle.

Bei berechneten Feldern handelt es sich aber im Normalfall um ungebundene Steuerelemente, die einen berechneten Wert im Formular anzeigen, aber nicht in der Tabelle speichern. Die Berechnung kostet zwar Rechenzeit, spart aber Platz auf der Festplatte.

Um das Ergebnis einer Berechnung in der Tabelle zu speichern, binden Sie das Steuerelement des Formulars an ein Feld der Tabelle. Dazu klicken Sie das Feld mit der rechten Maustaste an und rufen den Befehl Eigenschaften auf. Wählen Sie in der Registerkarte Daten des Eigenschaften-Fensters als Steuerelementinhalt zum Beispiel das Datenbankfeld Summe aus. Danach ist das Formularfeld an das Datenbankfeld Summe gebunden.

Damit das Feld Summe den korrekten Wert anzeigt, erfolgt die Berechnung immer dann, wenn sich einer der Summanden Wert1 oder Wert2 ändert. Damit das Feld Summe aktualisiert wird, sobald sich einer der beiden Werte ändert, programmieren Sie die Ereignisprozedur Nach Aktualisierung für die Felder Wert1 und Wert2. Dazu klicken Sie die Felder mit der rechten Maustaste an und wählen den Befehl Eigenschaften aus. Klicken Sie in der Registerkarte Ereignis in der Zeile Nach Aktualisierung auf den Button Aufbauen und geben folgende Ereignisprozedur ein:

 [Summe] =  [Wert1] +  [Wert2]
Dieser Befehl bildet die Summe der Steuerelemente Wert1 und Wert2 und speichert das Ergebnis im Steuerelement Summe. Da das Steuerelement Summe an das Datenbankfeld Summe gebunden ist, speichert Access das Rechenergebnis in der Datenbank.