Ergebnis 1 bis 5 von 5
  1. #1
    Registriert seit
    06.10.2011
    Beiträge
    2

    Fehlerhaftes Resultat in Excel-Formel

    Im Zusammenhang mit der Arbeitsplanung in einer Exceldatei möchte ich, dass man in Zelle A1 eine Zahl mit einer einzigen Dezimalstelle eingeben kann, wobei die Zahl nach dem Komma 0, 1, 2 ... 7 sein darf (z.B. 100.5), aber nicht 8 oder 9 (also nicht 100.8 oder 100.9).

    In Zelle B1 habe ich eine Formel gemacht, welche mir die erste Ziffer nach dem Komma ausgibt: =(($A1-GANZZAHL($A1))*10)

    In Zelle C1 habe ich eine Formel gemacht, welche mir sagt, ob diese Ziffer in Zelle B1 kleiner als 8 ist (wahr), oder eben nicht (falsch): =B1<8

    Bei der Eingabe von 100.8 in Zelle A1 rechnet die Formel in B1 richtig und gibt als Resultat 8 aus. Jedoch erscheint in Zelle C1 der Wert "wahr" (was bedeuten würde, dass der Wert in Zelle B1 kleiner als 8 ist), währenddessen der Wert "falsch" herauskommen sollte (8 ist nicht kleiner als 8).

    Was ist in meinen Formeln, bzw. Überlegungen falsch?

    Ich arbeite mit Microsoft Office Professionnal Plus 2010

  2. #2
    Registriert seit
    28.02.2010
    Ort
    Grossraum Aarau
    Beiträge
    639
    Hallo valadares

    Die Frage kann ich dir nicht beantworten, aber eine Idee zur Lösung des Problemes.

    Verwende die Datenüberprüfung für die Eingabezelle A1. Bei den Einstellungen wählst du unter den Gültigkeitsprüfungen,
    zulassen: Benutzerdefiniert auswählen und die untenstehende Formel eintragen.

    Formel:
    Code:
    =WENN($A1-GANZZAHL(KÜRZEN($A1;1))<0.79;1;0)
    Diese Formel überprüft bei der Dateneingabe die Nachkommastellen und lässt nur Werte zu kleiner als 0.8 probier es aus. Vorschlag ist getestet in Excel 2013

    Formel vereinfacht:
    Code:
    =$A1-GANZZAHL(KÜRZEN($A1;1))<0.799999
    Die Formel habe ich verkürzt.
    Geändert von Turakos (28.09.2019 um 11:03 Uhr)
    Freundliche Grüsse
    Turakos

    Das Forum lebt von den Erfahrungen und den Beiträgen der User – ein Feedback ist wünschenswert.

  3. #3
    Registriert seit
    06.10.2011
    Beiträge
    2
    Hallo Turakos

    Danke für deinen Lösungsvorschlag.

    Der Ansatz mit <0.79 anstatt <0.8 funktioniert sowohl in deiner wie auch in meiner Formel. Ich werde es letztendlich auch so machen.

    Trotzdem bleibt es für mich ein Rätsel, weshalb Excel mit der meines Erachtens richtigen Formel <0.8 ein falsches Ergebnis liefert.

  4. #4
    Registriert seit
    09.08.2007
    Beiträge
    272
    Zitat Zitat von valadares Beitrag anzeigen
    Trotzdem bleibt es für mich ein Rätsel, weshalb Excel mit der meines Erachtens richtigen Formel <0.8 ein falsches Ergebnis liefert.
    Hallo

    Mit meinen rudimentären EDV-Kenntnissen erkläre ich den "Fehler" so: Excel arbeitet (wie die meisten? IT-Systeme) mit dem Binärsystem: Jede einzelne Zahl wird in eine Binär-Zahl gewandelt. Dann wird die Berechnung durchgeführt und anschliessend wird das Resultat wieder ins Dezimal-System zurück gewandelt. Und da Excel nur mit 15 (?) Nachkommastellen rechnet, kommt es bei dieser Hin- und Her-Rechnerei zu Differenzen, die sich beim Rechnen mit dem Dezimal-System nicht ergeben würden.

    Gib mal in B1 folgende Formel ein: =(($A1-GANZZAHL($A1))*10000000)
    und formatiere die Zelle B1 als Zahl mit 9 Dezimalstellen.

    Dann ist das Resultat: 7999999.999999970 und nicht wie erwartet 8000000.

    Nicht zu empfehlen ist die Einstellung "Genauigkeit wie angezeigt festlegen": Menü Datei / Optionen / Erweitert /dort ziemlich weit unten unter "Beim Berechnen dieser Arbeitsmappe".
    Wenn Du bei dieser Einstellung B1 z. B. als Zahl mit 0 Dezimalstellen formatierst, dann wird C1 FALSCH ergeben.

    Grüsse Niclaus

  5. #5
    Registriert seit
    04.08.2015
    Ort
    in der Geburtsstadt der Gebrüder Grimm
    Beiträge
    237

    RUNDEN

    Hallo valadares,

    vermutich hat Niclaus Recht, dass sich da irgendwo ein Rundungsfehler einschleicht. Um das zu vermeiden könntest du die Formel in B1 mit RUNDEN erweitern:
    Code:
    =RUNDEN((A1-GANZZAHL(A1))*10;0)
    Gruß, Andreas

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •