Excel Formel Funktioniert nicht?

7 Antworten

weil verschachtelte Wenn Funktionen auf diese Weise nicht funktionieren, du kannst in Excel nicht einfach alle "Wenn"s hintereinander Reihen, ohne diese logisch aneinander zu Ketten,

Macht auch gar keinen Sinn du fragst ja im 1 Teil ob H6 leer ist, wen dies der Fall ist soll die Ausgabe mit "Nicht erfasst" beendet werden, ist dies aber nicht der Fall soll mit der nächsten Abfrage fortgesetzt werden, daher muss die nächste Abfrage logischer Weise im FALSCH Part der aktuellen Abfrage beginnen, da dies nur ausgeführt wird, wenn die vorherige falsch war. Denn es gibt ja nur Wahr oder Falsch, ein halb Falsch gibt es nicht, weshalb ein anhängen an das erste Wenn keinen Sinn ergibt.

Denn Excel denkt so ist die Bedingung wahr? ja/nein? wenn ja, dann wahr Part ausführen, wenn nein, dann falsch Part ausführen (in diesem Steht bei dir nichts), danach Ausgabe beenden, denn es ist ja schon alles überprüft worden. Wenn noch etwas danach kommt, hat dies keine Auswirkung mehr, andernfalls müsstest du Wenns nehmen, dort hast du eine etwas andere Syntax aber im Grunde genommen arbeitet die die genauso, mit dem einzigen Unterschied, das du nur einen einzigen "falsch" Part hast, den man am Ende mit .....;1;Falschwert) setzen kann. Womit dieser ausgeführt wird, wenn keine vorherige Bedingung wahr war.

Ergänzung:

folgendes würde funktionieren:

=WENN(ISTLEER(H6);"Nicht erfasst";WENN(UND(H6>45658;H6>=N1);"Läuft Ab";WENN(H6>=N1;"Gültig";WENN(H6<N1;"Abgelaufen"))))

Oder

=WENNS(ISTLEER(H6);"Nicht erfasst";H6<N1;"Abgelaufen";UND(H6>45658;H6>=N1);"Läuft Ab";H6>=N1;"Gültig")

WICHTIG: Ich musst deine Formel in eine andere Reihenfolge bringen, da wie in einem Kommentar weiter unten der UND Part keine Anwendung mehr findet, wenn das Datum über dem 1.1.25 liegt, da bereits die 2. Wenn Bedingung wahr ist somit der Wahrwert ausgegeben wird, also die restlichen 2 Bedingungen gar nicht mehr überprüft werden.

Du musst bei verschachtelten "Wenns"s immer eine Reihenfolge ab laufen, entweder bei "Wenns" vom wichtigsten zum unwichgsten Prüfkriterium, da einen Standardwert festlegen kannst, der immer ausgegeben wird.

Bei Wenn solltest du dir vorher eine feste Reihenfolge überlegen in aller Regel auf oder absteigend.

Beispiel prüft erst ob ein Wert > 10 ist und willst später Wissen, ob er >20 ist wird dieser Prüfung gar nicht mehr angwendet, sofern sich die Prüfung im FALSCH Part der ersten Prüfung befindet, willst du das erreichen kannst du die 2 Prüfung im WAHR Part, der ersten Bedingung abprüfen, dann funktioniert es also z.B. so:

=wenn(A1>10;wenn(A1>20;"größer 20";"größer 10");"kleiner oder gleich 10")

Was das angeht ist das klassische alte Wenn etwas flexibler, dafür bei großen Mengen an Überprüfung etwas unübersichtlich.

Woher ich das weiß:Berufserfahrung – sowohl Beruf als auch Hobby

Vielleicht ist für Deinen Fall die WENNS() - Funktion der Les- und Wartbarkeit halber besser geeignet.


bollwinkel1212 
Beitragsersteller
 12.06.2024, 09:42

Werd mich dazu mal einlesen danke

Vor den vielen WENN muss die ")" (Klammer zu) weg.

Wenn Du eine Zeitspanne für läuft demnächst ab ... brauchst Du eine neue Bedingung

Bild zum Beitrag

 - (Microsoft, Microsoft Excel, Microsoft Office)

Du hast mehrere WENN hintereinander geschrieben, aber bei keiner den "else"-Zweig verwendet. Ich vermute, wenn die erste WENN Abfrage fehlschlägt, aber kein "else" Zweig angegeben ist, kein Ergebnis, bzw. "#WERT" herauskommt und die anderen WENN Abfragen von Excel ignoriert werden.

Es müsste imo so aussehen: WENN(bedingung; wenn-zutreffend; wenn-nicht-zutreffend)

wobei für wenn-nicht-zutreffend eben immer die nächste deiner WENN Abfrage eingebaut werden müsste.

Probier dies mal:

=WENN(ISTLEER(H6);"Nicht erfasst";WENN(H6>=N1;"Gültig";WENN(H6<N1;"Abgelaufen";WENN(UND(H6>45658;H6>=N1);"Läuft Ab"))))


Gipfelstuermer  12.06.2024, 11:24

Deine Schlussfolgerung im oberen Teil ist nicht ganz richtig, man kann in Excel die Wennbedingungen ohne dies zu verschalten nicht einfach hintereinander schreiben, du kannst ja Testweise mal folgendes ausprobieren:

=WENN(A1="a";"ist A";"ist nicht A");WENN(A1="b";"ist B";"Ist nicht B")

Hier ist jeder Teil für sich abgeschlossen, dennoch erhält man #Wert als Ergebnis.

VanLorry  12.06.2024, 11:54
@Gipfelstuermer

Das meinte ich ja. Das sind dann mehrere Formeln für eine Zelle - welche soll Excel denn berücksichtigen?

Was ich meine ist, es müsste so aussehen:

=WENN(<bedingung1>; <then-zweig>; WENN( <bedingung2>; <then-zweig>; <else-zweig>) )
Gipfelstuermer  12.06.2024, 12:05
@VanLorry

dann hab ich die Argumentation nur ein wenig falsch verstanden, war auch nur als Hinweis gemeint, macht in Excel wie ich oben schrieb halt auch wenig Sinn, ich weiß das dies in Programmiersprachen funktioniert, da die in dem Falle einfach übersprungen wird, aber Excel ist eben Excel und nicht JS.