![]() |
||
![]() |
Vielfach verschachtelte Bedingung auswertenIch benötige in Excel 97 eine neunfach verschachtelte Wenn-Funktion. Excel selbst erlaubt aber lediglich sieben verschachtelte Ebenen. Gibt es an dieser Stelle einen geheimen Trick oder eine Lösung, um die Wenn-Funktion in Excel 97 neunfach zu verschachteln? Wie Sie richtig bemerkt haben, lässt sich die Funktion WENN in Excel lediglich über sieben Ebenen verschachteln, was in den meisten Fällen auch ausreichend ist. Zur Lösung Ihres Problems greifen Sie am besten auf die Fähigkeiten von Visual Basic for Applications (VBA) zurück und definieren dort eine eigene Funktion.
Der Aufbau des Programm-Codes dient an dieser Stelle lediglich als Beispiel für das Prinzip. Auf insgesamt neun Ebenen dienen auch neun verschiedene Werte jeweils als Vergleichsgröße in einer Bedingung. Diese Werte sind der Funktion als Argumente zu übergeben. Abhängig vom Ergebnis der einzelnen Bedingungen erhält die Funktion einen Wert als Ergebnis zugewiesen. Das Beispiel prüft sukzessiv, ob die Eingabewerte positiv sind und informiert anschließend mit einem Kürzel, bis zu welchem Argument die Werte positiv sind. Sie können die Bedingungen nach Belieben ändern oder sie auch durch »Else«-Abschnitte ergänzen. Falls nur ein einzelner Wert in die Bedingungen eingeht, können Sie den Aufbau mit der Funktion »Case Select« übersichtlicher gestalten, etwa in folgender Form:
Dieses Beispiel entscheidet anhand der Variablen »Wert1«, welche Rechenoperationen mit den weiteren Argumenten der selbst definierten Funktion auszuführen sind. Auch an dieser Stelle dient das Beispiel lediglich als Muster für eine Funktion, die Sie Ihren konkreten Anforderungen entsprechend festlegen müssen. Auf der Heft-CD zu dieser Ausgabe finden Sie unter dem CHIP-Code VERSCHAC ein fertiges Beispiel. |
![]() |