Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1540to1544
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Falsche Summe in Array

Falsche Summe in Array
15.02.2017 18:19:29
Buschendorf
Hallo zusammen,
ich melde mich zum ersten Mal selbst in diesem (und überhaupt in irgendeinem) Forum, nachdem ich hier jahrelang sehr viel lernen konnte. Mittlerweile würde ich mich als recht erfahrenen VBA-Autodidakten bezeichnen.
Nun habe ich aber ein Problem, auf dessen Lösung ich leider nicht selbst komme - und von dem ich befürchte, dass die Lösung sehr trivial sein könnte...
Ich bastle gerade an einem bestimmten Algorithmus, in dem ich mit einigen Arrays arbeite. Dabei fiel mir auf, dass die Summe eines Arrays nicht korrekt gebildet wird. Ich konnte den Fehler dann in einem neuen Projekt sehr einfach nachbilden:
Option Explicit
Sub IchVerstehDieWeltNichtMehr()
Dim i As Integer
Dim ArrTest(9) As Double
For i = 0 To UBound(ArrTest())
ArrTest(i) = 0.1
Next i
If Application.WorksheetFunction.Sum(ArrTest()) 

Die Funktion .Sum liefert bei der Summe 0,4+0,4+0,2 korrekt den Wert 1, während sie bei dem Zehnfachen von 0,1 weniger als 1 zu liefern scheint.
Kann mir das vielleicht jemand erklären?
Vielen Dank schon mal im Voraus,
Buschi

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Falsche Summe in Array
15.02.2017 18:24:55
SF
Hola,
verlinkst du bitte deine Fragen in den verschiedenen Foren untereinander?
Gruß,
steve1da
Ähem, seit Jahren hier u. anderswo mitgelesen, …
15.02.2017 18:47:59
Luc:-?
…„recht erfahren“, und dann hast du trotzdem noch nie etwas von der Gleit- bzw Fließ­komma-Pro­blematik in Verbindung mit EDV gehört, Buschi…?
Gruß, Luc :-?
Auch lesenswert…
AW: Ähem, seit Jahren hier u. anderswo mitgelesen, …
15.02.2017 19:00:51
Luschi
Hallo Luc,
warum wunderst Du Dich noch; wenn man wissen will, waß in der Welt los ist, dann hat man doch Facebook, Instagram & Co.
Und in den Office-Foren ist es doch das gleiche: Frage stellen - Abwarten & Chillen & Fertig ist der Lack!
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Ähem, seit Jahren hier u. anderswo mitgelesen, …
15.02.2017 22:02:02
Buschendorf
Danke auch für deinen Beitrag, lieber Luschi.
Ich habe beschlossen, mich zu deiner Genugtuung eine Weile schlecht zu fühlen.
Sind drei Tage angemessen?
Bester Gruß,
Buschi
P.S.: Muss man hier erst sowas wie eine Aufnahmeritual über sich ergehen lassen, um ernst genommen zu werden?
Oder ist das hier gerade vielleicht sogar das Aufnahmeritual?! ;)
Nee, das gibt's hier nicht wirklich, …
15.02.2017 23:46:24
Luc:-?
…Buschi,
sondern das hing ganz allein von deinem Text ab. Wer betont, dass er zwar neu (angemeldet) ist, aber schon seit Jahren mitliest, dem sollte bzw könnte diese doch relativ häufige Thematik durchaus schon mal aufge­fallen sein (vor Kurzem erst wieder hier)!
Luc :-?
Anzeige
Wundern täte es mich nicht wirklich, …
15.02.2017 23:49:53
Luc:-?
…Luschi,
wenn er nicht betont hätte, dass er hier mitliest…‽
Gruß, Luc :-?
AW: Ähem, seit Jahren hier u. anderswo mitgelesen, …
15.02.2017 21:57:47
Buschendorf
Das ist korrekt, Luc.
Ich schrieb aber nicht nur "recht erfahren", sondern auch "Autodidakt". Ich bin übrigens Rettungsdienstler und kein Informatiker, freue mich aber, wenn meine Frage für ein wenig Amusement gesorgt hat.
Es soll übrigens auch erfahrene Autofahrer geben, die noch nie etwas von einer Lambdasonde gehört haben.
Oder erfahrene Nutzer des öffentlichen Nahverkehrs, die noch nie etwas von einer Scharfenbergkupplung gehört haben.
Oder erfahrene Rettungsassistenten, die noch nie etwas von Cyclooxygenasen gehört haben.
Oder erfahrene Tabakkonsumenten, die noch nie von Jean Nicot gehört haben.
Oder, oder, oder…
Nun wäre das geklärt.
Ich danke Dir für die Lieferung des entsprechenden Stichwortes, über das ich mich zunächst ein wenig schlau lesen werde. Erst danach werde ich in Erwägung ziehen, hier erneut nach einer konkreten Lösung für mein Problem zu fragen…
Bester Gruß,
Buschi
Anzeige
Dass du damit ein Problem hast, hast du nicht …
16.02.2017 00:52:49
Luc:-?
…geschrieben, Buschi,
aber das wäre doch leicht zu beheben → einfach nur RUNDEN. Das sollte man übrigens immer tun, vor allem, weil die Primärdaten idR auf eine bestimmte Dezimal­Stellenzahl begrenzt sind. Folglich können berechnete Daten aus diesen nur eine Genauigkeit haben, die einer Stelle weniger bei den Primärdaten ent­spräche (außer ggf Addition & Subtraktion). Liefert man im Endergebnis mehr, täuscht das eine Genauigkeit vor, die einfach nicht gegeben ist.
Für Vgle erst recht, falls ein anderer DatenTyp als Double* (Vorschlag im VBA-Forum) das nicht behebt.
Ich kann und will ja nicht als Bsp dienen, aber ich habe mal mit einer Rechentechnik begonnen, die mit 3 verschiedenen, rein numerischen Systemen pgmmiert wurde, MOS, FIPS und GIPS. Die Technik der Langzeit­sonden, die da draußen immer noch zu fernen galaktischen „Ufern“ unterwegs sind, dürfte nicht viel besser sein…
Und das mit dem Verlinken hättest du auch wissen können, denn das ist hier häufiger Thema als die GK-Problematik…
_____
* Mit diesem DatenTyp kann man übrigens nette Spielchen treiben, zB dieses: Function rN(): rN = 0# * Not 0#: End Function
Zum Ausprobieren das geschützte Leerzeichen vor erstem rN durch ein normales ersetzen! (# kennzeichnet hier 0 als Double
)
Luc :-?
Anzeige
AW: Falsche Summe in Array
15.02.2017 19:10:35
Buschendorf
Hallo steve1da,
es tut mir Leid, aber ich verstehe deine Bitte nicht.
Kannst du bitte konkreter werden?
Bester Gruß,
Buschi
AW: Falsche Summe in Array
15.02.2017 21:26:53
Buschendorf
Ah, alles klar. Wird gemacht.
Ich hatte dein „untereinander“ nicht im Sinne von „gegenseitig“, sondern im Sinne von „einer über bzw. unter dem anderen“ verstanden. Das führte zu geringgradiger Konfusion.
Danke für den Hinweis....
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige