Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
1884to1888
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Gibt es sowas wie Rangwenn?

Gibt es sowas wie Rangwenn?
09.06.2022 10:59:25
Christian
https://www.herber.de/bbs/user/153487.xlsx
Hallo,
ich hoffe ihr könnt mir helfen.
Ihr seht ja in der Beispieldatei die Rangformel in Spalte L
Ich würde gerne eine Bedingung hinzufügen, dass nicht die ganze Spalte C als Bezug genommen werden soll, sondern nur die Zeilen, in denen entweder in Spalte H, J oder K eine Zahl größer 0 steht.
Dabei rauskommen soll dann das was in Spalte M steht.
Und deshalb Rang, weil dies nicht die standardmäßige Sortierung der Tabelle ist.
Kann mir da jemand helfen?
Danke
Christian

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Gibt es sowas wie Rangwenn?
09.06.2022 11:39:51
Daniel
Hi
ich weiß jetzt nicht, ob RANG unbedingt einen Zellbezug benötigt. Falls nein, könntest du es mal folgendem probieren:

Rang(C2;Filter(C:C;(H:H>0)+(J:J>0)+(K:K>0);""))
sollte Rang unbedingt einen Zellbezug als zweiten Parameter benötigen, könntest du die Funktionalität auch so durchführen:

=Vergleich(C2;Sortieren(Filter(C:C;(H:H>0)+(J:J>0)+(K:K>0);"");1;-1);0)
bitte mal die Syntax selber prüfen, da ich die notwendige Excelversion nicht habe, kann ich das nicht testen.
ggf musst du auch die offenen Zellbezüge (C:C) durch begrenzte ersetzen ($C$2:$C$1000)
Gruß Daniel
Anzeige
AW: Gibt es sowas wie Rangwenn?
09.06.2022 12:22:42
Christian
Hallo Daniel,
erstmal ich habe diese Version auch nicht, allerdings wird 2021 nicht zur Auswahl angeboten.

=WENN(RANG(C2;Filter(C:C;(H:H>0)+(J:J>0)+(K:K>0));0)0)+(J:J>0)+(K:K>0)); "")) 
Jedenfalls bei dieser Formel wüsste ich nicht, was da syntaxmäßig falsch sein könnte, trotzdem fragt mich Excel, ob ich eine Formel eingeben möchte.

=WENNFEHLER(VERGLEICH(C2;SORTIEREN(FILTER(C$2:C$1000;(H$2:H$1000>0)+(J$2:J$1000>0)+(K$2:K$1000>0);"") ;1;-1);0);"") 
funktioniert.

=WENNFEHLER(WENN(VERGLEICH(C2;SORTIEREN(FILTER(C$2:C$1000;(H$2:H$1000>0)+(J$2:J$1000>0) +(K$2:K$1000>0);"");1;-1);0)0) +(J$2:J$1000>0)+(K$2:K$1000>0);"");1;-1);0);"");"") 
auch.
Vielen Dank Daniel
Gruß
Christian
Anzeige
AW: Gibt es sowas wie Rangwenn?
09.06.2022 12:59:22
Daniel
Hi
ich vermute mal, dass RANG nur mit Zellbereichen arbeitet und nicht mit Matrix-Ergebnissen.
du müsstest also meine zweite Formelvariante probieren (Vergleich, Sortieren, Filter), wobei FILTER und SORTIEREN gemäß der Supportseiten in Excel 2021 vorhanden sein sollten.
die andere Variante wäre, dass du eine Hilfsspalte einfügst mit einer Formel, in der du die Datumswerte übernimmst, wenn die Bedingung erfüllt ist:

=Wenn(Oder(H2>0;J2>0;K2>0);C2;"")
und die Rang-Funktion dann in dieser Hilfsspalte anwendest.
Gruß Daniel
Anzeige
AW: Gibt es sowas wie Rangwenn?
09.06.2022 20:14:54
Christian
Hallo Daniel,
ja gut das hätte ich vielleicht deutlicher sagen sollen, aber die Hilfsspaltenlösung hätte ich auch so hinbekommen. Ich bin halt einfach kein Freund von Hilfsspalten, wo es sich vermeiden lässt. Machen m.E. die Tabelle nur unübersichtlich und wenn man die Spalten ausblendet weiß man irgendwann nimmer für was sie gut waren.
Trotzdem danke für den Hinweis auf diese Lösung.
Zu deiner zweiten Formelvariante habe ich ja bereits geschrieben, dass beide Varianten, die ich da noch hinzugefügt habe, funktionieren.
Mit den $ Zeichen hat auch eine deutliche Verbesserung der Rechenzeit gebracht, auch danke für diesen Hinweis.
Aber da hab ich gleich mal ne Frage
Es gibt ja (falls ich jetzt nicht total daneben liege) auch die Möglichkeit, mit Verweis(9^9... usw. die letzte Zeile der Tabelle zu bestimmen und dann mit C$2:INDEX(C:C usw. den genutzten Zellbereich exakt einzugrenzen. Ist dies schneller als den Zellbereich über C$2:C$1000 zu definieren?
Danke
Christian
Anzeige
AW: Gibt es sowas wie Rangwenn?
10.06.2022 08:26:12
Daniel
das kommt darauf an.
letztenendes wird die Rechenzeit dadurch bestimmt, wieviele Zeilen die Formel durcharbeiten muss. Bei C:C sinds halt 1,04 Mio Zeilen, dh ganz schön viele, je weniger um so schneller.
Wenn du in der Formel einen festen Wert eingibst und diesen zu klein machst, kanns halt mal sein dass du nicht alle Zeilen berücksichtigst ohne dass du es merkst.
von daher ist das mit dem Verweis schon optimal. Ich würde nur den Verweis in einer seperaten Zelle berechnen und in den Formeln auf diese Zelle verweisen. dann muss der Verweis nicht in jeder Formel neu berechnet werden sondern nur einmal, das Ergebnis ist ja immer für alle Zellen gleich.
die andere Methode wäre dass du den Bereich als "intelligente" Tabelle formatierst und in der Formel die Addressierungsart der Tabelle verwendest. die Intelligente Tabelle passt sich ja automatisch an neu hinzugekommene Zeilen an, so dass du so auch automatisch die richtige Größe hast und das nicht berechnen musst..
ob das Praktikabel ist, hängt aber auch davon ab, wie die Daten erzeugt und bereitgestellt werden.
Gruß Daniel
Anzeige
AW: Gibt es sowas wie Rangwenn?
10.06.2022 09:37:56
Christian
Hallo Daniel,
du wirst lachen, das ist die einzige nicht intelligente Tabelle in der Mappe. Das Problem ist. dass ich eine Hilfszeile habe, in der ich für jede Spalte das Maximum der restlichen Spalte berechne. (in der restlichen Spalte stehen dann keine Formeln mehr).
Da hab ich bislang keine Lösung, wie ich das in einer intelligenten Tabelle umsetzen könnte.
Aber du hast meine Vermutung bestätigt, dass das der schnellste Weg sein könnte.
Und wenn ich mit Verweis(9^9... arbeite, sollte es ja auch nix ausmachen wenn ich Zeilen lösche oder hinzufüge.
Gruß
Christian

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige