Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
584to588
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
584to588
584to588
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Hilfe bei komischen Werten

Hilfe bei komischen Werten
15.03.2005 23:27:05
Peter
Hallo!
Habe ein schwerwiegendes Problem:
Die Formel
"z = (Int(Rnd * 10)) * h / i"
h,i sind Werte aus (1;60;3600)
generiert mir eine Zufallszahl die durch den Quotient h/i zusätzlich verändert wird.
Schön und gut, es ergeben sich meist auch erträgliche Werte.
Wenn der Quotient nun aber den Wert 1/60 annimmt kommen unschöne Werte vor wie
0,050000001
Da das Programm zur Umrechnung von Zeiteinheiten dient, wie einige vielleicht schon vermutet haben, passt dieser Wert überhaupt nicht...
Was kann ich dagegen tun, dass VBA mir einen Wert ausgibt, der nach etlichen Nachkommanullen noch eine 1 enthält.
Die Prüfung, ob Round(z, 6) ungleich z ist funktioniert leider nicht...
mit freundlichen Grüßen
Peter Elsesser

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hilfe bei komischen Werten
16.03.2005 00:07:37
Björn
Hallo Peter,
versuch's mal mit
h = 1
i = 60
j = 2 'gibt die Anzahl der Kommastellen an.
z = WorksheetFunction.Round((Int(Rnd * 10)) * h / i, j)
Gruß
Björn
AW: Hilfe bei komischen Werten
16.03.2005 10:17:24
Luc
Hallo Peter,
das muss an fehlerhafter Darstellung von Dezimalzahlen in Excel liegen! Der Fehler ist schon alt und nie von MS korrigiert worden. Wenn du noch eine andere Kalk zur Verfügung hast, mach da mal das Gleiche! In Lotus würde wahrscheinl 0,05 rauskommen. Ich habe auch schon bei simplen Divisionen sowas wie 1,33333333334 (Periode 3) erhalten. Ich vermute, das xl in der Zahl selbst irgendwo notiert, ob aufgerundet wurde, und dieses tag mitunter zu löschen vergisst, so dass die letzte der möglichen Dezimalen auch aufgerundet wird, wenn es nicht erforderlich ist. Deshalb funktioniert auch dein Vergleich nicht. Die Zahl endet ja nicht wirklich auf 1 (Periode 0!), es wird nur so dargestellt! Übrigens, wenn du die Zahl in Text und dann wieder zurück in eine Zahl umwandelst, sollte diese Fehlinfo verloren gehen und 0,05 rauskommen.
Gruß Luc :-?
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige