Ich wohne nun seit fast 20 Jahren; aber es hat noch niemand geklingelt, um sich Eier auszuleihen. Ich glaube, ich schmeiße die jetzt weg.

Letzte Woche habe ich eine interessante Frage erhalten. Vielleicht kann man sie mit LAMBDA lösen. Aber da er kein LAMBDA hat, habe ich eine Lösung mit Hilfsspalte gebaut. Etwas Besseres ist mir nicht eingefallen.

Die Fragestellung: in mehreren getrennt nebeneinander stehenden Reihen befinden sich Daten. Gesucht ist der Rang:

Problem 1: Die Funktion RANG setzt einen zusammenhängenden Wertebereich voraus.

Problem 2: diese Funktion ist in keiner anderen Funktion vorhanden – nicht in AGGREGAT oder TEILERGEBNIS, …

Deshalb habe ich es mit einer Hilfsspalte gelöst: Alle Werte untereinander geschrieben, sortiert und über die Funktion VERGLEICH die Position ermittelt. Mir ist nichts Eleganteres eingefallen:

7 comments

  • XLarium

    Easy-peasy.

    =RANG.GLEICH(number;(range1;range;range3);0)

    • Medardus

      Clever. Danke.
      Ich wusste nicht, dass man getrennte Bereiche mit einer Klammer zusammenfassen kann. Somit funktioniert tatsächlich auch RANG:
      =RANG(Wert;(Spalte1;Spalte2;Spalte3))
      PS: Ich würde auch RANG.GLEICH den Vorzug gegenüber RANG geben …

  • Heinz-Jürgen Ladberg

    Es geht auch ohne Hilfsspalten und mit RANG (bzw. RANG.GLEICH)
    Voraussetzung: Mit dem Namensmanager arbeiten…
    z.B. Liste = Tabelle1!$A$2:$A$11;Tabelle1!$C$2:$C$11;Tabelle1!$E$2:$E$11
    Zelle B2: =RANG(A2;Liste)
    Zelle D2: =RANG(C2;Liste)
    Zelle F2: =RANG(E2;Liste)
    Anschließens bis Zeile 11 herunterziehen

    • Medardus

      eine weitere, sehr clevere Idee – danke!
      die drei getrennten Bereiche in einen Namen packen.
      Kleines Problem: man müsste die Formel für Liste erweitern, da sich die Größen der Bereiche möglicherweise ändern …

  • Andreas Jensen

    Hallo Rene,
    ich danke dir nochmals für die Unterstützung in diesen Fall.
    Da ich nur bis zu einem bestimmten Rang gehen wollte, habe ich die Formel noch entsprechend erweitert.
    =WENN(RANG.GLEICH(B42;($B$42:$B$54;$D$42:$D$54;$F$42:$F$549))>$D$1;““;RANG.GLEICH(B42;($B$42:$B$53;$D$42:$D$54;$F$42:$F$549)))
    und dann noch eine Bedingte Formatierung eingebaut.

    Ich nutze das ganze für die Sitzverteilung nach d`Hondt (Höchstzahlverfahren) bei einer Betriebsratswahl.

    Gruß
    Andreas

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.