Summe in Endlosformular - OHNE einzelne DS zu speichern?

27/01/2009 - 11:46 von Karl Effinger | Report spam
Hallo Gruppe!

Ich habe ein Endlosformular, in dem ich z.b. das Tabellenfeld "Wert1"
im Formular-Textfeld "txtWert1" anzeige, "Wert2" ist in "txtWert2" und
so weiter (geht bis 8).
Im Formularfuß gibt es ein Textfeld "txtSumWert1", in dem ich gerne
die Summe aller txtWert1-Inhalte anzeigen möchte. Wenn ich hierfür
"=summe([Wert1])" verwende, dann wird die Summe ja erst neu berechnet,
wenn ich den kompletten Datensatz speichere. Wàhrend der Focus also
zuerst mal in das Feld "txtWert2" geht, bleibt die Summe noch
unveràndert (bzw. für die aktuell ANGEZEIGTEN (nicht: in der DB
stehenden) Werte ist sie falsch).
Nach jedem Verlassen eines der Felder "txtWert1" bis "txtWert8" ein
"DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, ,
acMenuVer70" ausführen möchte ich aber auch nicht - u.a. wegen der
dann fehlenden Möglichkeit, die Änderung(en) rückgàngig zu machen
(geht dann ja nur noch für die Änderung in "txtWert8").
Frage also: kann ich die Summe auch irgendwie anstatt auf dem
Tabellenfeld "Wert1" auf dem Formular-Textfeld "txtWert1" aufbauen?

Danke,
Karl
 

Lesen sie die antworten

#1 Karl Donaubauer
27/01/2009 - 11:55 | Warnen spam
Karl Effinger wrote:
Ich habe ein Endlosformular, in dem ich z.b. das Tabellenfeld "Wert1"
im Formular-Textfeld "txtWert1" anzeige, "Wert2" ist in "txtWert2" und
so weiter (geht bis 8).
Im Formularfuß gibt es ein Textfeld "txtSumWert1", in dem ich gerne
die Summe aller txtWert1-Inhalte anzeigen möchte. Wenn ich hierfür
"=summe([Wert1])" verwende, dann wird die Summe ja erst neu berechnet,
wenn ich den kompletten Datensatz speichere. Wàhrend der Focus also
zuerst mal in das Feld "txtWert2" geht, bleibt die Summe noch
unveràndert (bzw. für die aktuell ANGEZEIGTEN (nicht: in der DB
stehenden) Werte ist sie falsch).
Nach jedem Verlassen eines der Felder "txtWert1" bis "txtWert8" ein
"DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, ,
acMenuVer70" ausführen möchte ich aber auch nicht - u.a. wegen der
dann fehlenden Möglichkeit, die Änderung(en) rückgàngig zu machen
(geht dann ja nur noch für die Änderung in "txtWert8").
Frage also: kann ich die Summe auch irgendwie anstatt auf dem
Tabellenfeld "Wert1" auf dem Formular-Textfeld "txtWert1" aufbauen?



Nein.

Ich erklàre meinen Anwendern einfach, dass sie einen Datensatz
komplettieren und speichern müssen, bevor sie eine aktualisierte
Summe sehen. Bisher konnte noch jeder damit leben und fand
das einigermaßen logisch.

Falls du weiterhin zwischenspeichern willst, gibt's wenigstens
schönere Speicherbefehle, z.B.

RunCommand AcCmdSaveRecord

HTH
Karl
********* Ich beantworte keine Access-Fragen per Email. *********
Access-FAQ: http://www.donkarl.com
1. .NET-Entwickler-Konferenz für Accessler: www.donkarl.com?nek

Ähnliche fragen