
Ich versuche, mehr als zwei ()-Anweisungen in einer Zelle zu verschachteln ISNUMBER
SEARCH
, und die letzten beiden funktionieren nicht. Die ersten beiden Argumente („n/a“ und „r“) funktionieren, aber das dritte und vierte liefern die falschen Daten.
Können mehr als zwei Suchvorgänge in einer Zelle durchgeführt werden? Wo ist der Fehler in meiner Formel?
=IF(ISNUMBER(SEARCH("N/A",$L2)),$E2+$AY$2,IF(ISNUMBER(SEARCH("r",$L2)),$E2+$AY$3,IF(ISNUMBER(SEARCH("rr",$L2)),$E2+$AY$4,IF(ISNUMBER(SEARCH("rrr",$L2)),$E2+$AY$5))))
Danke im Vorraus für deine Hilfe
Antwort1
Dies liegt daran, dass die Formel ein einzelnes „r“ in den Zellwerten „rr“ und auch „rrr“ findet. Versuchen Sie, die Reihenfolge der ISNUMBER-Bedingung zu ändern. Beginnen Sie mit „rrr“, dann „rr“ und schließlich „r“. Es sollte funktionieren.
=IF(ISNUMBER(SEARCH("N/A",$L2)),$E2+$AY$2,IF(ISNUMBER(SEARCH("rrr",$L2)),$E2+$AY$5,IF(ISNUMBER(SEARCH("rr",$L2)),$E2+$AY$4,IF(ISNUMBER(SEARCH("r",$L2)),$E2+$AY$3))))
Viele Grüße, Lukas
Antwort2
Wenn wir die Formel präzisieren, sehen wir:
IF( ISNUMBER(SEARCH("N/A",$L2)),
$E2+$AY$2,
IF( ISNUMBER(SEARCH("r",$L2)),
$E2+$AY$3,
IF( ISNUMBER(SEARCH("rr",$L2)),
$E2+$AY$4,
IF( ISNUMBER(SEARCH("rrr",$L2)),
$E2+$AY$5
)
)
)
)
Jetzt sehen wir:
- Das letzte (innerste) IF() enthält keinen ELSE-Abschnitt;
- Das 2. IF() gibt „True“ für jeden Wert zurück, der von mehreren inneren IF()s getestet wurde. Daher kann kein inneres IF() „True“ zurückgeben, da die äußeren IF() dies bereits getan haben.
Empfehlung: Ersetzen Sie SEARCH() durch einen einfachen Gleichungstest.
Antwort3
Mit SEARCH
der ISNUMBER
Funktion kann überprüft werden, ob die Zelle einen bestimmten Text enthält oder nicht.
SEARCH
Gibt die Position der Suchzeichenfolge zurück, sofern diese gefunden wurde. Die Formel prüft, ob die Suchzeichenfolge gefunden wurde, indem sie ISNUMBER
zum Ermitteln ihrer numerischen Positionen verwendet wird.
In Ihrem Fall sucht die Formel beim Suchen von rr
oder nach und in und berechnet jedes Mal anstelle von oder .rrr
r
rr
rrr
$E2+$AY$3
$E2+$AY$4
$E2+$AY$5
Wenn L2
ein anderer Text als rr
oder enthalten ist rrr
, funktioniert die gleiche Formel.
@Muji hat den Trick gemacht, Suchzeichenfolgen in umgekehrter Reihenfolge verwendet, sodass die Formel zuerst „ rrr
then rr
& r
in“ findet rrr
und ordnungsgemäß funktioniert.
Der Einfache IF function
kann all dies erfolgreich testen.
=IF($L$2="N/A",$E$2+$AY$2,IF($L$2="r",$E$2+$AY$3,IF($L$2="rr",$E$2+$AY$4,IF($L$2="rrr",$E$2+$AY$5))))
Passen Sie die Zellbezüge in der Formel nach Bedarf an.