Seite 1 von 1

Formel von Tabelle läuft nach OO auf LO Migration auf #WERT! - Fehler

Verfasst: Do 23. Feb 2017, 12:28
von wela
Hallo Community,

ich hoffe auf eure tatkräftige Unterstützung: In unserem Unternehmen verwenden wir einen AZ-Bogen mit einer absurd verschachtelten Berechnung der Arbeitszeit. Nun werden wir zwangsumgestellt auf LO (Was ich sehr gutheiße, aber das steht nicht zur Debatte). Die Führungskraft, welche den Bogen eigentlich betreuen sollte, hat die Aufgabe an mich delegiert. Nun habe ich schon einige Stunden gesucht, jedoch den Fehler nicht finden können.

Da ich vollkommen ausgelastet mit meinem daily business bin, hoffe ich auf Unterstützung eurerseits.

Derzeitiger Stand:

- unter OO 4.1.2 läuft die Formel problemlos
- unter LO 5.2.4.2 wirft die Ergebniszelle #WERT!

Hier einmal die beiden Formeln:

Ergebniszelle:

=WENN(((G29-H29-F29)+(J29-I29))*24<6,99;WENN((I29-G29)*24>0,25;((G29-H29-F29)+(J29-I29))*24;+X29);+X29)

Hilfsberechnung in verdeckter Spalte:

=WENN((+(G29-H29-F29)+(J29-I29)+(I29-G29))*24<4,99;(((G29-H29)-F29)+(J29-I29))*24;WENN((+(G29-H29-F29)+(J29-I29)+(I29-G29))*24<6,99;(((G29-H29)-F29)+(J29-I29))*24-$Einstellungen.$K$16;WENN((I29-G29)*24<($Einstellungen.$K$15+0,001);WENN((((J29-H29)-(F29))*24-$Einstellungen.$K$15)>11;11;(((J29-H29)-F29))*24-$Einstellungen.$K$15);WENN(((((G29-H29)-F29)+(J29-I29))*24)>11;11;((((G29-H29)-F29)+(J29-I29))*24)))))

Gibt es eine Möglichkeit abzuprüfen, an welcher Stelle der Fehler aufläuft bzw. wo eine Zelle nicht sauber referenziert wird? Der Funktionsassi half mir da kaum.

Ich freue mich über jegliches Feedback.
wela

Re: Formel von Tabelle läuft nach OO auf LO Migration auf #WERT! - Fehler

Verfasst: Do 23. Feb 2017, 14:09
von karolus
Hallo

Meine Glaskugel sagte gerade: "Ich glaub es hackt, woher soll ich das wissen"

Karolus

Re: Formel von Tabelle läuft nach OO auf LO Migration auf #WERT! - Fehler

Verfasst: Do 23. Feb 2017, 14:10
von paljass
Hi,
die Hilfe sagt dazu:
Die Formel ergibt einen Wert, der nicht der Definition entspricht, oder eine in der Formel referenzierte Zelle enthält Text anstelle einer Zahl.
Tippen tät auf die Sache mit dem Text, aber ohne Datei ist es halt nur ein Tipp.
Der Funktionsassi half mir da kaum.
Warum nicht?
In Funktionsassi wird die Formel unten rechts angezeigt. Nun kannst du in jeden Formelteil klicken und bekommst oben rechts das Teilergebnis angezeigt. Sollte das auf #WERT springen, hast du den Übeltäter.
Im übrigen funktioniert das auch ähnlich in der Eingabezeile des Tabellenblatts: Formelzelle auswählen, Klick in einen Formelteil in der Eingabezeile und F9 drücken.

Viel Erfolg
paljass

Re: Formel von Tabelle läuft nach OO auf LO Migration auf #WERT! - Fehler

Verfasst: Do 23. Feb 2017, 14:20
von wela
karolus hat geschrieben:Hallo

Meine Glaskugel sagte gerade: "Ich glaub es hackt, woher soll ich das wissen"

Karolus
Danke für Ironie, die hilft mir nur bedingt ;)

Ich hänge mal die cleane Variante an, evtl. gibts Ideen.

Besten Dank an alle Hilfswilligen.
FG

Re: Formel von Tabelle läuft nach OO auf LO Migration auf #WERT! - Fehler

Verfasst: Do 23. Feb 2017, 15:27
von paljass
Hallo Wela,
also mit LO 5.2.5 gibts nicht den Fehler #Wert, sondern Err:502

Der Fehler wird von der Zelle X42 an die anderen vererbt.
Weil in X29 kein Fehler auftritt, wird die Formel nicht richtig übertragen worden sein. Kopiere die Formel von C29 nach X42 und die Fehler verschwinden.
Ob dadurch jetzt irgendwelche Rechenfehler ausgelöst werden, musst du mal selbst testen.

Gruß
paljass

Re: Formel von Tabelle läuft nach OO auf LO Migration auf #WERT! - Fehler

Verfasst: Do 23. Feb 2017, 17:08
von mikele
Hallo,
mit einer absurd verschachtelten Berechnung der Arbeitszeit
Das trifft den Nagel auf den Kopf!
Die kurze Antwort ist, dass in H17 ein Monstrum von Verschachtelungen am Ende ein Leerzeichen liefert. Dieses Leerzeichen wird unter LO aber nicht als Null interpretiert, sodass bei den Berechnungen mit H17 dann der Fehler auftritt.
Die lange Antwort ist, dass dieses Verschachtelungsmonstrum entweder sinnfrei oder falsch oder beides ist!
Zunächst: Die Oder()- und Und()-Funktion lassen mehr als zwei Parameter zu.
Aus

Code: Alles auswählen

=WENN(E17="Ü";$Einstellungen.$O$15/24;WENN((UND(UND(ODER(ODER(ODER(ODER(ODER(E17="U";E17="K");E17="G");E17="F");E17="KK");E17="KK");+$Q$17>20);+$Q$17<24));0,25/24;WENN((UND(ODER(ODER(ODER(ODER(ODER(E17="U";E17="K");E17="G");E17="F");E17="L");E17="KK");$Q$17>29));" ";" ")))
wird

Code: Alles auswählen

=WENN(E17="Ü";$Einstellungen.$O$15/24;WENN(UND(ODER(E17="U";E17="K";E17="G";E17="F";E17="KK";E17="KK");$Q$17>20;$Q$17<24);0,25/24;WENN(UND(ODER(E17="U";E17="K";E17="G";E17="F";E17="L";E17="KK");$Q$17>29);" ";" ")))
Warum in der zweiten Wenn()-Funktion zweimal E17="KK" auftaucht, weiß die Führungskraft.
Warum in der dritten Wenn()-Funktion nun E17="L" auftaucht ...
Warum die dritten Wenn()-Funktion stets " " liefert, also überflüssig ist, ...
--------
Lösung:
1) Die Verschachtelung sollte sinnvoll aufgelöst werden. Dazu wäre es hilfreich, die Bedingungen, wann was passieren soll in Worten zu formulieren (es aus den Formeln herauszufiltern ist arg mühsam).
2) Anstelle von " " würde ich das Ergebnis 0 wählen und per Zellenformatierung ausblenden.

--------
Noch mehr: In F17 steht

Code: Alles auswählen

=WENN(E17=" ";"";$Einstellungen.$M$15)
Leer und Leerzeichen sind zwei verschiedene Sachen! Was soll hier passieren? Ich vermute und befürchte mal, dass im Falle der realen Anwesenheit die Formeln in einzelnen Zellen per Hand überschrieben werden, um die Arbeitszeit zu berechnen. Das wäre dann das absolute Chaos.