collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 67
  • Punkt Versteckte: 0
  • Punkt Mitglieder: 1
  • Punkt Benutzer Online:

* Forenstatistik

  • stats Mitglieder insgesamt: 13909
  • stats Beiträge insgesamt: 65767
  • stats Themen insgesamt: 8871
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: Summieren im Bericht mit Problem  (Gelesen 825 mal)

Offline HeZa

  • Newbie
  • Beiträge: 5
Summieren im Bericht mit Problem
« am: November 13, 2017, 09:53:42 »
Hallo,
ich habe ein Problem mit berechneten Feldern in einem Bericht.

Im Detailbereich befinden sich mehrere berechnete Felder, deren Ergebnis in der zugrundeliegenden Abfrage ermittelt wird.
Im Berichtsfuß möchte ich nun die Summe über eines dieser Felder darstellen  =Summe([Feld])
Leider bekomme ich dort aber nicht das korrekte Ergebnis angezeigt.

Feldinhalte im Detailbereich :  0,55  und 0,13
Summe im Berichtsfuß:          0,67

Das Tabellenfeld welches die Ausgangswerte für meine Berechnung liefert ist ein Zahlenfeld (Single)
In der Abfrage wurde keine Formatierung vorgenommen
Im Bericht formatiere ich die Ergebnisfelder als Festkommazahl mit 2 Kommastellen.
Hat jemand eine Idee was ich hier falsch mache?
Vielen Dank im Voraus!
Herbert
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7200
Re: Summieren im Bericht mit Problem
« Antwort #1 am: November 13, 2017, 10:29:22 »
Hallo,
berechnete Felder können nicht summiert werden. In der Summenformel muss die Berechnungsformel wiederholt werden.

Was wird denn in den berechneten Feldern berechnet ?
Können die Berechnungen nicht in die Abfrage verschoben werden ?
Dann könnte man wieder einfach summieren.
Gruß
Klaus
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1166
Re: Summieren im Bericht mit Problem
« Antwort #2 am: November 13, 2017, 10:30:41 »
Die Rechnung dürfte stimmen. Hingegen rundet das Anzeigeformat der Textfelder die Anzeigen aber nicht den hinterlegten Wert entsprechend der eingestellten Eigenschaft - in Deinem Fall auf zwei Dezimalstellen hinter dem Komma.

Abhängig davon, ob die Einzelfelder exakte Fakten darstellen, oder ob die Summe den Fakt bildet, kannst Du in der Abfrage die Berechnung der Werte runden (akkumuliert allerdings Rundungsfehler), oder die Darstellung der Berechnung unterlassen und nur die Summe aufführen.

Zur Verdeutlichung der Sachlage einige Anweisungen aus dem VBA-Direktbereich:F1# = .545
?F1
 0,545
?Format$(F1, "0.00")
0,55

F2# = .127
?F2
 0,127
?Format$(F2, "0.00")
0,13

?F1 + F2
 0,672
?Format$(F1 + F2, "0.00")
0,67
Grüße von der (⌒▽⌒)
 

Offline HeZa

  • Newbie
  • Beiträge: 5
Re: Summieren im Bericht mit Problem
« Antwort #3 am: November 13, 2017, 12:05:47 »
Hallo,
Danke erst mal für die Antworten.
@MzKlMu
Freilich kann ich berechnete Felder summieren - ich habs ja im Bericht gemacht - im Berichtsfuß
Die Werte stellen das Ergebnis einer techn. Berechnung dar, die in der zugrundeliegenden Abfrage erledigt wird.
Im Detailbereich des Berichts formatiere ich die Ergebnisse dann auf 2 Nachkommastellen, wobei hier die Rundung passt.
Nur im Summenfeld im Berichtsfuß passt sie dann plötzlich nicht (mehr)

Irgendwie versteh ich das alles nicht ganz.
0,7 (Single) multipliziert mit 3 (Integer) ergibt in der Abfrage 2,09999990463257
0,5 multipliziert mit 3 ergibt 1,5
????
« Letzte Änderung: November 13, 2017, 12:25:20 von HeZa »
 

Offline HeZa

  • Newbie
  • Beiträge: 5
Re: Summieren im Bericht mit Problem
« Antwort #4 am: November 13, 2017, 12:53:49 »
So, Problem gelöst:

Ich habe nun im Bericht das Summenfeld entfernt und nochmals neu hinzugefügt.
Gleiche Formatierung wie am Anfang - der einzige Unterschied - jetzt wurde das Summenfeld neu manuell erstellt, zuvor vom Assistenten.
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1166
Re: Summieren im Bericht mit Problem
« Antwort #5 am: November 13, 2017, 13:30:52 »
An Deine Lösung glaube ich nicht. Stell Dir fiktiv vor, in drei Datensätzen würde 1 durch 3 geteilt werden - zur Anzeige kämen dann drei Detailfelder mit der Anzeige 0,33 und ein Summenfeld mit der Anzeige 1,00.
Grüße von der (⌒▽⌒)
 

Offline HeZa

  • Newbie
  • Beiträge: 5
Re: Summieren im Bericht mit Problem
« Antwort #6 am: November 13, 2017, 15:56:47 »
Hallo,

@Lachtaube
Glaubst du nicht - ich schon  ;)
Ich möchte im Summenfeld nicht 1,00 stehen haben sondern 0,99 - und das macht's bei mir

 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1166
Re: Summieren im Bericht mit Problem
« Antwort #7 am: November 13, 2017, 17:27:22 »
Dann liegt der Wert aber schon als 0,33 und nicht als 0,33333... usw. in den Datenfeldern vor - alles andere wäre Zauberei.
Grüße von der (⌒▽⌒)
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7200
Re: Summieren im Bericht mit Problem
« Antwort #8 am: November 13, 2017, 17:38:08 »
Hallo,
Zitat
0,7 (Single) multipliziert mit 3 (Integer) ergibt in der Abfrage 2,09999990463257
was erwartest Du vom Datentyp Single ?
Der ist zum genauen rechnen völlig ungeeignet. Nimm mindestens Double oder wenn es noch genauer sein muss Dezimal. Auch Währung würde gehen. Währung kann man auch mit Werten die keine Währung sind verwenden.
Probiere es mal aus.
Das hat auch weniger mit Access zu tun, das ist die Fließkommaproblematik die jeder PC
Gruß
Klaus
 

Offline HeZa

  • Newbie
  • Beiträge: 5
Re: Summieren im Bericht mit Problem
« Antwort #9 am: November 15, 2017, 15:42:08 »
Hallo
@MzKlMu
mit dem Tip Double zu verwenden wird richtig gerechnet - DANKE
Nur ... 0,7 mal 3 ergibt 2,1  und nicht 2,099999.....
Komisch, dass das Problem in VBA nicht auftritt, auch nicht mit einer als Single deklarierten Variablen.
Und zu deinem Argument bezgl. genauem Rechnen - ich benötige halt nur 2 Kommastellen und nicht den ganzen Schweif.
Aber mit Double hat sich das ohnehin erledigt.

Zauberei ... nö, Rundungsproblem oder meinetwegen Darstellungsproblem.
Die von mir angesprochene Summenfelder habe ich vom Berichtsassistenten erstellen lassen.
Und die haben ein falsches Ergebnis geliefert.

Fazit, MS hat mit seinem Single-Datentyp in Accesstabellen ein Problem geschaffen.
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7200
Re: Summieren im Bericht mit Problem
« Antwort #10 am: November 15, 2017, 17:11:15 »
Hallo,
Zitat
MS hat mit seinem Single-Datentyp in Accesstabellen ein Problem geschaffen.
Da irrst Du, der Datentyp Single wurde nicht von MS für Access erfunden. Datentypen sind in der Computertechnik schon in den Anfängen festgelegt worden. Nicht von MS.
Die Genauigkeiten ergeben sich durch die Problematik Kommazahlen als 0 und 1 darzustellen, das wird als Fleißkomma gemacht. Jeder einfache Taschenrechner hat das Problem. Nur da sieht man es nicht weil Taschenrechner natürlich eine viel höhere Genauigkeit verwenden.

Und es liegt am Datenbankentwickler sich über die Datentyp Gedanken zu machen und die Genauigkeit(Datentyp) zu verwenden die notwendig ist.
Im Regelfall rechnet man immer mit der vollständigen Zahl und rundet oder formatiert nur dann wenn man es zur Anzeige benötigt.
Gruß
Klaus