Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Summenbildung in Abfrage/Formular

116 views
Skip to first unread message

Vera Köhler

unread,
May 27, 2008, 9:12:02 AM5/27/08
to
Hallo Newsgroup,

ich möchte in einem Formular Summen von bereits summierten Abfragefeldern
ausgeben, das funktioniert aber nicht.

Abfrage1 (A1): Ursprung aus Tabelle, Werte nach Tagen summiert (z.T. mehrere
Datensätze für einen Tag, die in dieser Abfrage summiert werden)

Abfrage 2 (A2): Ursprung aus A1, die Werte werden diesmal nach KW gruppiert
und summiert.

Formular: Werte werden aus A2 entnommen, die Datensätze aus A2 werden
korrekt angezeigt, die Summen dieser Felder
(z.B. =Summe([SummevonSummevonStunden]) werden aber nicht angezeigt,
stattdessen eine Fehlermeldung.

In einer dritten Abfrage (A3) habe ich schon versucht, mir nur die
kompletten Summen ausgeben zu lassen, was aber auch nicht für alle Felder
funktioniert. In dem Feld "SollStunden" steht in der Ursprungstabelle pro
Datensatz der Wert für den Tag (z.B. Leistungsdatum fällt auf einen Montag =
Sollstunden 7,2, Leistungsdatum fällt auf einen Sonntag: Sollstunden = 0),
daher kann ich dort nicht mit der Summenfunktion arbeiten. Für die Ausgabe
nach KW paßt der Ausdruck SummevonMittelwertSollstunden, in der A3 kann ich
aber hiervon nicht noch einmal die Summe bilden, das liefert falsche Werte.
Was kann ich tun?

Danke Vera


Karl Donaubauer

unread,
May 27, 2008, 10:27:55 AM5/27/08
to
Vera Köhler wrote:
> ich möchte in einem Formular Summen von bereits summierten Abfragefeldern
> ausgeben, das funktioniert aber nicht.
>
> Abfrage1 (A1): Ursprung aus Tabelle, Werte nach Tagen summiert (z.T.
> mehrere Datensätze für einen Tag, die in dieser Abfrage summiert werden)
>
> Abfrage 2 (A2): Ursprung aus A1, die Werte werden diesmal nach KW
> gruppiert und summiert.

Warum summierst du nicht gleich in der ersten Abfrage nach KW?

> Formular: Werte werden aus A2 entnommen, die Datensätze aus A2 werden
> korrekt angezeigt, die Summen dieser Felder
> (z.B. =Summe([SummevonSummevonStunden]) werden aber nicht angezeigt,
> stattdessen eine Fehlermeldung.

> ...

die du nicht verraten willst.

An sich sollte das funktionieren.
Häufig gibt es Fehler wegen der Benamsung eines Steuerelementes.
Gib dem Textfeld im Formular mit der obigen Summenformel also mal
einen sicher nicht konflikträchtigen Namen z.B. "txtStundenSumme".

--
HTH
Karl
********* Ich beantworte keine Access-Fragen per Email. *********
Access-FAQ: http://www.donkarl.com
+ Entwickler-Konferenzen für Access und SQL Server

Michael Tsiaousidis

unread,
May 28, 2008, 4:31:46 AM5/28/08
to
Hallo Vera
das Feld mit der Summe im Formular (Vermutlich tabellarisches Formular)
mit Bearbeiten Kopier in den Formularfuß kopieren und dann abändern von:
Feldname in =Summe([Feldname])
"Vera Köhler" <vera.k...@osnanet.de> schrieb im Newsbeitrag
news:uLhdDt$vIHA...@TK2MSFTNGP03.phx.gbl...

Vera Köhler

unread,
May 28, 2008, 5:43:15 AM5/28/08
to

"Karl Donaubauer" <NoS...@donkarl.com> schrieb im Newsbeitrag
news:6a2k3aF...@mid.individual.net...

> Vera Köhler wrote:
>> ich möchte in einem Formular Summen von bereits summierten Abfragefeldern
>> ausgeben, das funktioniert aber nicht.
>>
>> Abfrage1 (A1): Ursprung aus Tabelle, Werte nach Tagen summiert (z.T.
>> mehrere Datensätze für einen Tag, die in dieser Abfrage summiert werden)
>>
>> Abfrage 2 (A2): Ursprung aus A1, die Werte werden diesmal nach KW
>> gruppiert und summiert.
>
> Warum summierst du nicht gleich in der ersten Abfrage nach KW?
>
Weil ich ein Feld "SollStunden" enthalten habe, wo je nach Tag
unterschiedliche Werte pro Datensatz drinstehen, daher berechne ich hier
zunächst den Mittelwert pro Tag (Rest Aufsummierung pro Tag), damit ich dann
den Werte habe, den ich pro Woche summieren kann, sonst passt's nicht.

>> Formular: Werte werden aus A2 entnommen, die Datensätze aus A2 werden
>> korrekt angezeigt, die Summen dieser Felder
>> (z.B. =Summe([SummevonSummevonStunden]) werden aber nicht angezeigt,
>> stattdessen eine Fehlermeldung.
>> ...
>
> die du nicht verraten willst.
>

Doch, es steht einfach "Fehler" im Feld...

> An sich sollte das funktionieren.
> Häufig gibt es Fehler wegen der Benamsung eines Steuerelementes.
> Gib dem Textfeld im Formular mit der obigen Summenformel also mal
> einen sicher nicht konflikträchtigen Namen z.B. "txtStundenSumme".
>

Das habe ich versucht. Ein Feld heißt z.B. [txtIstStdKW],
Steuerelementinhalt ist [SummevonSummevonStunden]. Wenn ich im Formularfuß
ein Feld einrichte mit dem Namen [txtGesamtSummeIstStdKW], und davon die
Summe bilde 'Summe([txtIstStdKW])' wird im Feld #Name? angezeigt. Wenn ich
versuche, die Summe vom Steuerelement zu bilden
'Summe([SummevonSummevonStunden])', wird #Fehler angezeigt.
Interessanterweise hatte ich eben beim Ausprobieren kurz die richtige Summe
drinstehen, habe das Formular gespeichert und neu geöffnet und dann wieder
#Fehler. Ich habe das Gefühl, ich habe zuviele Abfragen hintereinander
geschaltet, aber nicht so recht die Idee, wie ich das anders lösen könnte...

Gruß Vera

Karl Donaubauer

unread,
May 28, 2008, 6:08:17 AM5/28/08
to
Vera Köhler wrote:
> "Karl Donaubauer schrieb:
> ...

>>> Formular: Werte werden aus A2 entnommen, die Datensätze aus A2 werden
>>> korrekt angezeigt, die Summen dieser Felder
>>> (z.B. =Summe([SummevonSummevonStunden]) werden aber nicht angezeigt,
>>> stattdessen eine Fehlermeldung.
>>> ...
> Doch, es steht einfach "Fehler" im Feld...
> ...

>> Häufig gibt es Fehler wegen der Benamsung eines Steuerelementes.
>> Gib dem Textfeld im Formular mit der obigen Summenformel also mal
>> einen sicher nicht konflikträchtigen Namen z.B. "txtStundenSumme".
>>
> Das habe ich versucht. Ein Feld heißt z.B. [txtIstStdKW],
> Steuerelementinhalt ist [SummevonSummevonStunden]. Wenn ich im Formularfuß
> ein Feld einrichte mit dem Namen [txtGesamtSummeIstStdKW], und davon die
> Summe bilde 'Summe([txtIstStdKW])' wird im Feld #Name? angezeigt.

Das ist klar. Summe() funktioniert nur mit Feldnamen der Datenherkunft,
nicht mit Steuerelementnamen.
Mir ging es nicht um das Feld, das du summieren willst, sondern darum,
dass der Name des Textfeldes, in dem die Summenformel steht,
konfliktfrei ist.

> Wenn ich
> versuche, die Summe vom Steuerelement zu bilden
> 'Summe([SummevonSummevonStunden])', wird #Fehler angezeigt.
> Interessanterweise hatte ich eben beim Ausprobieren kurz die richtige
> Summe drinstehen, habe das Formular gespeichert und neu geöffnet und dann
> wieder #Fehler. Ich habe das Gefühl, ich habe zuviele Abfragen

> hintereinander geschaltet, ...

Wie gesagt, sollte das im Prinzip klappen. Schwer zu sagen,
ob du vielleicht einen Defekt im Formular hast oder was sonst stört.

Falls es um sehr viele Daten geht, hast du schon mal versucht,
ob es klappt, wenn du die Daten testweise stark einschränkst?

> aber nicht so recht die Idee, wie ich das anders lösen könnte...

Als Notlösung kannst du DSum testen, also Steuerelementinhalt:

=DSum("SummevonSummevonStunden";"A2")

Vera Köhler

unread,
May 29, 2008, 6:27:17 AM5/29/08
to

>> Wenn ich
>> versuche, die Summe vom Steuerelement zu bilden
>> 'Summe([SummevonSummevonStunden])', wird #Fehler angezeigt.
>> Interessanterweise hatte ich eben beim Ausprobieren kurz die richtige
>> Summe drinstehen, habe das Formular gespeichert und neu geöffnet und dann
>> wieder #Fehler. Ich habe das Gefühl, ich habe zuviele Abfragen
>> hintereinander geschaltet, ...
>
> Wie gesagt, sollte das im Prinzip klappen. Schwer zu sagen,
> ob du vielleicht einen Defekt im Formular hast oder was sonst stört.
>
> Falls es um sehr viele Daten geht, hast du schon mal versucht,
> ob es klappt, wenn du die Daten testweise stark einschränkst?
>
>> aber nicht so recht die Idee, wie ich das anders lösen könnte...
>
> Als Notlösung kannst du DSum testen, also Steuerelementinhalt:
>
> =DSum("SummevonSummevonStunden";"A2")
>
Das habe ich gemacht, dauert zwar etwas, bis das Ergebnis ausgeworfen wird,
passt jedoch, danke!

Gruß Vera


Jens Schilling

unread,
May 29, 2008, 7:03:29 AM5/29/08
to
Hallo, Vera

Vera Köhler wrote:
>> =DSum("SummevonSummevonStunden";"A2")
> Das habe ich gemacht, dauert zwar etwas, bis das Ergebnis ausgeworfen
> wird, passt jedoch, danke!

Solltest Du bei diesem Lösungsansatz bleiben wollen, könntest Du die etwas
langsame Originalversion ersetzen; schau mal hier

http://easyweb.easynet.co.uk/~trevor/AccFAQ/downloads.htm

nach den " Domain Function Replacements " - die sind schneller.

--
Gruss
Jens
______________________________
FAQ: http://www.donkarl.com


Vera Köhler

unread,
May 30, 2008, 3:44:35 AM5/30/08
to
Danke für den Tipp, werd' ich mir mal anschauen!

Gruß Vera


"Jens Schilling" <jensschilling...@fissership.de> schrieb im
Newsbeitrag news:uAsRYsX...@TK2MSFTNGP06.phx.gbl...

0 new messages