Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1916to1920
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

Rang Formel in PQ

Rang Formel in PQ
22.01.2023 17:42:42
Christian
https://www.herber.de/bbs/user/157423.xlsx
Hallo,
bitte helft mir,
ich würde gerne die Rang Formel in Tabelle4 Spalte H in die Power Query Abfrage integrieren, nur wie?
Ich finde zwar durch google Lösungen mit einer Indexspalte, nur damit komme ich nicht weiter, da der Bezug F$2:F2 so wie er da steht, gewollt ist.
Kann mir da jemand helfen?
Danke
Christian

39
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Rang Formel in PQ
23.01.2023 09:01:48
ChrisL
Hi Christian
Quelle "Tabelle1" entspricht deiner Ausgangslage, jedoch ohne Spalte 8. Die willst du ja neu generieren.
Die Aktualisierungsdauer ist mangelhaft. PQ ist m.E. nicht darauf ausgelegt, Auswertungen in Abhängigkeit von der Zeilennummer (F$2:F2) zu machen.
Bisher ignoriert habe ich, dass auch mehrere Personen am gleichen Tag Geburtstag haben können. Diese erhalten also nicht den gleichen Rang, sondern es wird weiter gezählt.
Könnte ich schon noch korrigieren, aber die Laufzeit wird dadurch noch langsamer. Spielt es in solchen Fällen überhaupt eine Rolle, welche der beiden Personen zuerst in der Liste steht bzw. einen höheren Rang hat?
Ich frage mich, ob man die Katze nicht besser am Schwanz packen möchte. Welche Aussage möchtest du schlussendlich mit der Auswertung treffen. So wie der Rang aktuell dasteht, kann man ja kaum etwas raus lesen (sieht für das Auge ziemlich chaotisch aus).
let
    Quelle = Excel.CurrentWorkbook(){[Name="Tabelle1"]}[Content],
    #"Geänderter Typ" = Table.TransformColumnTypes(Quelle,{{"1", type text}, {"2", type text}, {"3", type date}, {"4", type text}, {"5", type text}, {"6", type date}, {"7", type text}}),
    TabelleMitIndex = Table.AddIndexColumn(#"Geänderter Typ", "Index", 1, 1, Int64.Type),
    HilfstabelleHinzufügen = Table.AddColumn(TabelleMitIndex, "Bereich", each Table.AddIndexColumn(Table.Sort(Table.SelectRows(TabelleMitIndex, (r) => r[Index]=[Index]),{{"6", Order.Descending}}), "Rang", 1, 1, Int64.Type)),
    #"Hinzugefügte benutzerdefinierte Spalte1" = Table.AddColumn(HilfstabelleHinzufügen, "Rang", each List.First(Table.SelectRows([Bereich], (r) => r[Index]=[Index])[Rang])),
    #"Entfernte Spalten" = Table.RemoveColumns(#"Hinzugefügte benutzerdefinierte Spalte1",{"Index", "Bereich"})
in
    #"Entfernte Spalten"
cu
Chris
Anzeige
AW: hierzu...
23.01.2023 09:43:34
neopa
Hallo Chris,
... ich hatte mich vorhin auch mit der Problemstellung beschäftigt und war für mich bisher zum Ergebnis gelangt, dass der Einsatz der RANG()-Formel wie von Christian bereits getan, als effektivste Lösung erscheint.
Zu Deiner Frage an ihn: Seine Zielstellung scheint mE zu sein, den/die jeweils jüngste/n Schauspieler/in im Bezug auf das Datum des Films in Spalte 3 zu ermitteln.
Gruß Werner
.. , - ...
kann sein...
23.01.2023 09:58:31
ChrisL
Hi Werner
Seine Zielstellung scheint mE zu sein, den/die jeweils jüngste/n Schauspieler/in im Bezug auf das Datum des Films in Spalte 3 zu ermitteln.
Kann gut sein.
Aber die Darstellung wäre ja dann ziemlich unglücklich. Angenommen wir nehmen Stichtag 31.10.1977 (Film Prey Zeile 20), dann muss ich erst die Zeilen oberhalb durchsuchen und komme auf 3 Treffer mit Rang 1. Abgesehen davon, dass man immer erst die Zeilen oberhalb durchsuchen müsste, wüsste ich nicht, welchen Informationsgehalt sich daraus ergeben würde.
Schon eher verstehen würde ich, wenn man die Differenz der Datumswerte (Alter zum Zeitpunkt des Films) ausgeben würde. Dann könnte man sortieren und filtern. Bzw. man könnte ein Pivot mit Datenschnitt drauf aufbauen. Gruppierungen mit MIN/MAX usw.
Ich glaube hier wird irgendwas "gemurkst", obwohl man eigentlich etwas ganz anderes möchte. Natürlich nur eine Vermutung, vielleicht gibt es tatsächlich eine tieferen Sinn hinter der Aufgabe :)
cu
Chris
Anzeige
AW: ja, die Differenz der Datumswerte ...
23.01.2023 10:06:36
neopa
Hallo Chris,
... und zwar "Alter zum Zeitpunkt des Films" wie Du schreibst, genau das meinte ich mit: "den/die jeweils jüngste/n Schauspieler/in im Bezug auf das Datum des Films in Spalte 3"
Und deswegen erkannte ich keine wirklich vertretbare Möglichkeit dies mit PQ zu realisieren.
Gruß Werner
.. , - ...
und zu der Datumsdifferenz..
23.01.2023 11:38:50
Christian
hatte ich mal in der Tabelle, brauche ich aktuell aber nicht mehr.
AW: kann sein...
23.01.2023 11:37:36
Christian
Hallo Chris,
Werner hatte mit seiner Vermutung recht, genau das will ich mit der Rang Formel erreichen. Ich nutze sie in diesem Zusammenhang schon seit 2013, lange bevor es PQ gab. Ich denke ich weiß was ich damit erreichen will. nur dass ich damals das was ich jetzt mit PQ gemacht habe, halt mit weiteren Hifsspalten gemacht habe um zum Ziel zu kommen.
Das Einzige was ich mit der Rang Formel noch machen will ist ein Filter kleiner gleich 30, dann hab ich was ich will. Da kommt nix mehr danach.
Gruß
Christian
Anzeige
AW: dafür dann ...
23.01.2023 12:04:23
neopa
Hallo Christian,
... gefiltert nach Personen die jünger als 30 sind und sortiert nach Alter aufwärts, z.B. so (?):
let
    Quelle = Excel.CurrentWorkbook(){[Name="Tabelle4"]}[Content],
    #"Gefilterte Zeilen" = Table.SelectRows(Quelle, each ([6] > #datetime(1872, 8, 13, 0, 0, 0))),
    #"Geänderter Typ" = Table.TransformColumnTypes(#"Gefilterte Zeilen",{{"3", Int64.Type}, {"6", Int64.Type}}),
    #"Hinzugefügte benutzerdefinierte Spalte" = Table.AddColumn(#"Geänderter Typ", "Diff", each ([3]-[6])/365.25),
    #"Gefilterte Zeilen1" = Table.SelectRows(#"Hinzugefügte benutzerdefinierte Spalte", each [Diff]  30),
    #"Geänderter Typ1" = Table.TransformColumnTypes(#"Gefilterte Zeilen1",{{"6", type date}, {"3", type date}}),
    #"Sortierte Zeilen" = Table.Sort(#"Geänderter Typ1",{{"Diff", Order.Ascending}}),
    #"Entfernte Spalten" = Table.RemoveColumns(#"Sortierte Zeilen",{"Diff"})
in
    #"Entfernte Spalten"
Gruß Werner
.. , - ...
Anzeige
AW: dafür dann ...
23.01.2023 12:07:03
Christian
Hallo Werner,
da hast du glaub was misverstanden ich will den Rang nach kleiner 30 filtern, nicht das Alter.
Gruß
Christian
AW: dafür dann ...
23.01.2023 12:08:31
Christian
Hallo Werner,
da hast du glaub was misverstanden ich will den Rang nach kleiner 30 filtern, nicht das Alter. Und zwar den Rang den ich mit diesem speziellen Bereich, den ich absichtlich so gewählt habe, berechne.
Gruß
Christian
AW: dafür weiß ich dann keine PQ-Lösung owT
23.01.2023 13:35:46
neopa
Gruß Werner
.. , - ...
AW: dafür weiß ich dann keine PQ-Lösung owT
23.01.2023 17:04:28
Christian
kein Problem, dann nehme ich halt die Formellösung
AW: hierzu...
23.01.2023 11:33:27
Christian
Hallo Werner,
naja so fast, das endgültige Ziel ist ein Filter kleiner gleich 30. Aber dein Hintergedanke, wie die Rang Formel zustande kommt ist richtig.
Gruß
Christian
Anzeige
AW: Rang Formel in PQ
23.01.2023 11:31:59
Christian
Hallo Chris,
ja der Sinn des Ganzen ist im ersten Schritt die Auswertung, die wievieltjüngste Person es zu dem Zeitpunkt war, als der jeweilige Film veröffentlicht wurde.
Der zweite Schritt dann ein Filter kleiner gleich 30.
Aber wenn das wirklich so lange dauert und die echte Tabelle ist noch viel größer, habe sie stark verkleinern müssen, damit die maximale Dateigröße für dieses Forum nicht überschritten wird (die echte Quelltabelle hat ca. 20000 Zeilen) macht wohl eine derartige Lösung wenig Sinn.
Gruß
Christian
AW: Rang Formel in PQ
23.01.2023 12:47:38
ChrisL
Hi Christian
So würde es ein wenig schneller gehen. Der Rang wird nicht mehr ermittelt und direkt die Top30 selektiert.
Sehr schnell wird der Prozess dennoch nicht, aber immerhin werden keine überflüssigen Zeilen mehr geladen.
let
    Quelle = Excel.CurrentWorkbook(){[Name="Tabelle1"]}[Content],
    #"Hinzugefügter Index" = Table.AddIndexColumn(Quelle, "Index", 1, 1, Int64.Type),
    #"Hinzugefügte benutzerdefinierte Spalte1" = Table.AddColumn(#"Hinzugefügter Index", "Young30", each Table.Range(Table.Sort(Table.SelectRows(#"Hinzugefügter Index", (r) => r[Index]=[Index]),{"6", Order.Descending}),0,30)),
    #"Entfernte Spalten" = Table.RemoveColumns(#"Hinzugefügte benutzerdefinierte Spalte1",{"1", "2", "3", "4", "5", "6", "7", "Index"}),
    #"Erweiterte Young30" = Table.ExpandTableColumn(#"Entfernte Spalten", "Young30", {"1", "2", "3", "4", "5", "6", "7"}, {"Young30.1", "Young30.2", "Young30.3", "Young30.4", "Young30.5", "Young30.6", "Young30.7"}),
    #"Entfernte Duplikate" = Table.Distinct(#"Erweiterte Young30")
in
    #"Entfernte Duplikate"
cu
Chris
Anzeige
AW: also mir scheint es so, ...
23.01.2023 13:32:52
neopa
Hallo Chris,
... dass man wohl doch am effektivsten auf die RangFormel zurückgreifen muss/sollte.
Dein Script ermittelt 114 Datensätze, wenn man die Ausfilterungen noch integriert, die Christian in seinem Script hat noch berücksichtigt bleiben nur 85 übrig.
Christian Tabelle mit der RANG()-Formel und diese gefiltert nach Rang kleiner 31 ergibt jedoch 357 Datensätze.
Gruß Werner
.. , - ...

AW: also mir scheint es so, ...
23.01.2023 14:06:13
ChrisL
Hi Werner
Ja, die Vorzüge von PQ greifen bei einer Zeilen-basierten Auswertung nicht.
RANG wird irgendwann auch langsamer. Man müsste mal testen, ob die Aktualisierungsdauer von PQ bei grösseren Datenmengen noch akzeptabel ist und wie es sich mit RANG vergleicht. Meine Annahme wäre, dass die Laufzeit für RANG proportional steigt, während dies für PQ nicht der Fall sein wird (je mehr Input-Zeilen, desto proportional weniger Ergebnis-Zeilen).
Neugierig wäre ich zwar, aber ich mag mir die Testdatei trotzdem nicht aufbauen. Vielleicht mag es Christian mal ausprobieren.
Bei mir ergibt die letzte PQ-Auswertung 366 Ergebniszeilen, was mit einer manuellen Filterung auf den Quelldaten/RANG übereinstimmt. Minimale Differenzen könnten per Zufall mal entstehen, wenn identische Geburtsdaten auf Platz 30 sind, aber grob stimmt es schon.
cu
Chris
Anzeige
AW: nachgefragt ...
23.01.2023 14:18:33
neopa
Hallo Chris,
... auf welche Tabelle bezieht sich Deine Auswertung? Du hast Tabelle1 im M-Code zu stehen , die es in der Beispieldatei (noch) nicht gibt. Ich hatte dies geändert auf Tabelle4.
Gruß Werner
.. , - ...
AW: nachgefragt ...
23.01.2023 14:41:43
ChrisL
Hi Werner
Wenn du Tabelle4 nimmst, dann wirst du vermutlich Input und Output gleichgeschaltet haben.
Ich kopiere das Tabellenblatt, lösche Spalte 8 und beschrifte es als Tabelle1. So hast du eine neue Basis für die Auswertung.
Zwischenzeitlich habe ich aber den Test mal mit 10k Zeilen gemacht. Während die PQ-Auswertung schmerzhaft langsam wird, läuft die Rang-Formel noch zügig durch. Zwar wird die Anzahl Ergebniszeilen wie vermutet proportional kleiner. Basierend auf meinen Zufallsdaten:
- 1k Input = 150 Ergebniszeilen
- 10k Input = 500 Ergebniszeilen
Aber letztlich irrelevant, denn die Dauer für 10k Input-Zeilen ist für meinen Geschmack nicht mehr zumutbar. Deine Einschätzung, dass Rang das einzig geeignete Vorgehen (basierend auf der Aufgabenstellung) ist, wäre somit bestätigt. Dies mindestens bei den PQ Vorgehen, welche mir eingefallen sind.
Wobei ich noch anmerken möchte, dass gefühlt zwischen meinem ersten und zweiten Code-Vorschlag kein spürbarer Unterschied in der Aktualisierungdauer besteht. Letztlich werden in beiden Vorschlägen zeilenweise Hilfstabellen erzeugt, was das Laufzeit-Problem ist. Die Ermittlung des Rangs macht dann keinen wesentlichen Unterschied mehr.
cu
Chris
Anzeige
AW: die Vorgabe war doch doch Tabelle4 ...
23.01.2023 16:36:49
neopa
Hallo Chris,
... jedenfalls hatte sich Christian in seiner Abfrage auf diese Bezug genommen. Er hat nur die Tabellenblätter verwirrend bezeichnet.
Aber wie auch immer, ich würde nach wie vor für diese spez. Auswertung bis ca 10K Datensätze momentan die RANGformel nutzen. Deine Abfrage braucht auf meinem PC schon für das vorliegende Beispiel mit 1K Datenzeilen ein vielfaches an Zeit gegenüber der Erstellung der Rangformel für 50K Datenzeilen. (Mein Office beim war Einkopieren von 20K Datensätzen zu vorhandenen 60 K Datensätzen abgeschmiert)
Gruß Werner
.. , - ...
AW: die Vorgabe war doch doch Tabelle4 ...
23.01.2023 16:56:40
ChrisL
Hi Werner
Nur für Rang kann man Quelle und Resultat am gleichen Ort haben. Aber wenn man auf Top30 filtert, dann kann Quelle/Ergebnis nicht mehr identisch sein, denn man würde mit jeder Filterung/Aktualisierung die Quelle ändern bzw. sogar "zerstören" (die gefilterten Zeilen sind endgültig weg).
Und ja, die Aktualisierung der PQ Abfrage dauert zu lange und ist daher für die angegebene Datenmenge ungeeignet. Es bleibt die bisherige Lösung mit Rang-Formel.
cu
Chris
Anzeige
AW: nachgefragt ...
23.01.2023 17:06:45
Christian
Hallo Werner,
dann weiß ich nicht wo dieser Unterschied herkommt. Die Auswertung soll sich jedenfalls auf die Tabelle beziehen die ich mitgeschickt habe.
Gruß
Christian
AW: hierzu ...
24.01.2023 10:57:57
neopa
Hallo Christian,
... Du hast hier geantwortet auf eine Frage, die ich an Chris gestellt habe. Deine Datei die Du eingestellt hattest, holt im Tabellenblatt "Ergebnis" mit Formeln Daten aus einer Datei 'E:\Daten\Excel\[AZNude.xlsx], die uns nicht nicht vorliegt. Dieses "holen" könnte man übrigens auch anstelle mit Formeln bereits schon mit PQ realisieren.
Jedenfalls hast Du dessen Ergebnis als Tabelle4 definiert und deren Daten mit PQ ausgewertet und dessen Ergebnis ins Tabellenblatt 4 ausgegeben lassen und dann dort die RANG()-Formel eingesetzt.
Chris hat seine Auswertung dann auf Basis dieser Tabelle (bei Dir durch Deine PQ-Auswertung in Tabelle4_2 ausgegeben) vorgenommen und diese Tabelle zuvor wie von ihm beschrieben als Tabelle1 seiner PQ-Auswertung neu zur Verfügung gestellt.
Gruß Werner
.. , - ...
AW: hierzu ...
24.01.2023 12:55:30
Christian
Hallo Werner,
da ist was wares dran, solange man 2,2 MB große Dateien hier nicht hochladen kann, kann man blöderweise halt nur die Ausschnitte hochladen die man für wichtig hält.
Zu der Frage ob man das "holen" durch PQ ersetzen kann, darüber haben ich hier vor einigen Jahren mal mit Günther diskutiert, habe mich dann aber aus dem einfachen grund dagegen entschieden, dass die Datenquelle zwei verschiedene csv Dateien sind (eine für Schauspieler und eine für Filme/Serien), die sich auch nicht zusammenfügen lassen.
Außerdem steht in keiner der beiden Dateien Hinweise welche der Schauspieler jetzt in welchen Filmen / Serien mitgespielt haben. Das heißt diese Verknüpfung wer wo mitgespielt hat, mache ich von Hand und das kann mir kein PQ abnehmen.
Da mag es dann Zwischenlösungen geben, dass ich die Codes selbst vorgebe und PQ dann die Übernahme von Namen, Titel und Daten übernimmt, jedoch empfand ich das dann im Gegensatz zu meiner Methode mit den XVERWEIS Formeln als zu umständlich.
ZU dem ursprünglichen Thema dieses Beitrags nochmal zurück. Ihr habt mich überzeugt bei der bestehenden Rang Formel zu bleiben.
Gruß
Christian
AW: nun ja, ...
24.01.2023 13:56:34
neopa
Hallo Chris,
... das war und ist Deine Entscheidung. Unser Ziel war es dagegen nicht, Dich davon zu "überzeugen", dass Du bei der RANG()-Formel-Auswertung bleibst. Wir haben nur aktuell mit PQ noch keine vertretbare Alternative gefunden.
Gruß Werner
.. , - ...
AW: nun ja, ...
24.01.2023 14:19:02
Christian
Wenn du eine Alternative findest schaue ich sie mir natürlich gerne an und wenn ich sie für praktikabler halte, werde ich sie dann auch nutzen. Ich habe allerdings gerade dich so verstanden, als würdest du die Rang Formel für die beste Methode halten.
AW: richtig, doch ...
24.01.2023 14:42:46
neopa
Hallo Christian,
... was noch nicht ist, könnte sich später ja evtl. noch als realisierbar ergeben.
Allerdings wenn Chris eine solche Lösung nicht findet, dann ich erst Recht nicht.
Gruß Werner
.. , - ...
AW: richtig, doch ...
24.01.2023 14:51:31
Christian
Hallo Werner,
es eilt ja auch nicht. Ich habe ja einen Weg der funktioniert.
Vielleicht hilft es ja, sich mal ganz von dem Gedanken zu lösen, was ich eigentlich erreichen will und einfach mal zu versuchen, die Spalte mit der Formel in PQ nachzubauen und dann einfach zu vergleichen ob jeder Wert übereinstimmt (ok, ich weiß der Vorschlag kommt von einem Laien).
Gruß
Christian
AW: richtig, doch ...
24.01.2023 15:04:05
Christian
darf ich im Zusammenhang mit einem anderen Blatt meiner Mappe noch was anderes fragen?
Warum werden mir wenn ich Spalte D filtern will nur Textfilter angeboten und nicht Zahlenfilter, bzw. was kann ich tun damit mir diese angeboten werden?
Danke
Christian
https://www.herber.de/bbs/user/157446.xlsx
AW: Excel erkennt hier als Filtermöglichkeit ...
24.01.2023 15:11:31
neopa
Hallo Christian,
... den Textfilter, weil die überwiegende Anzahl an Datenwerten in Spalte D Texte (und zwar ="") sind. Wenn Du einen Zahlenfilter erzwingen willst, musst Du Deine Formel in D2 von ...);"") abändern in ... );0) und die 0 mit benutzerdefinierten Zahlenformat: 0;; ausblenden.
Gruß Werner
.. , - ...
AW: Excel erkennt hier als Filtermöglichkeit ...
24.01.2023 15:18:49
Christian
wieder was gelernt, danke
AW: bitteschön owT
24.01.2023 16:56:17
neopa
Gruß Werner
.. , - ...
AW: also mir scheint es so, ...
23.01.2023 17:09:46
Christian
die genannten 20000 Zeilen beziehen sich ja auf die Ausgangslage. Der bereits bestehende Teil der Abfrage beschränkt das Ganze auf 6-7000. Und für diesen Bereich halteich die Rechenzeit der Rang-Formel für noch vertretbar. Außerdem kann man ja auch die automatische Berechnung für dieses Blatt abschalten. Also das wäre nicht das Problem. Problematischer wäre eine ewige Berechnung einer PQ Abfrage, weil dann jeder Klick auf alle aktualisieren ewig dauert.
F$2:F2 tut schon vom Sehen weh. "Exponenz.Seuche!"
23.01.2023 13:48:38
lupo1
AW: F$2:F2 tut schon vom Sehen weh. "Exponenz.Seuche!"
23.01.2023 17:15:46
Christian
Hallo Lupo,
ich weiß dass das nicht unbedingt dem normalen Gebrauch der Rang Formel entspricht. Aber die Ergebnisse der Formel =RANG(F2;F:F;0) sind nunmal andere und eben nicht die die ich wünsche. Ich möchte halt dass nur die Filme mit einbezogen sind, die zu dem jeweiligen Datum bereits veröffentlicht sind und das erreiche ich m.e. am einfachsten in dem ich die Tabelle nach VÖ Datum sortiere und dann die Formel RANG(F2;F$2:F2;0) nutze.
Die Tabelle ist ja schon steinalt. Ich meine wir hatten diese Diskussion hier im Forum schonmal um das Jahr 2013 rum und überlegt ob man das auch mit klassischen Rang Formeln berechnen kann, die unabhängig von der Sortierung sind. Aber wir hatten damals meine ich nichts gefunden, was entweder ohne Hlffspalten auskommt oder durch Matrixformeln nicht deutlich länger zum berechnen braucht.
Gruß
Christian
zur Vollständigkeit RANG-WENN in PowerPivot
24.01.2023 16:11:13
ChrisL
Hi
Nochmal zum Vorherigen klargestellt:
- Power-Query schliesse ich als Lösung aus (Aktualisierung dauert zu lange)
- Eine alternative PQ-Lösung fällt mir nicht ein. Ich glaube nicht, dass es einen performanten Weg mit PQ gibt, lasse mich aber gerne vom Gegenteil überzeugen.
- Bezüglich den Quellen (Tabelle4 vs. neue Tabelle) habe ich tatsächlich ein durcheinander gemacht. Spielt aber letztlich keine Rolle, ich habe einfach das bereits vorbereitete (gefilterte, sortierte) Resultat als Basis genommen.
Nun zu Power-Pivot.
Die Verfügbarkeit von Power-Pivot ist nicht in jeder Excelversion gegeben. Soweit ich sehe wurde die Verfügbarkeit in Excel 2022 ausgelassen.
https://www.easytweaks.com/enable-power-pivot-excel/
Die bestehende PQ-Abfrage wird nicht in die Tabelle ausgegeben, sondern direkt ins Datenmodell geladen.
Menü Power-Pivot, Verwalten
Benutzerdefinierte Spalte hinzufügen:
=RANKX(FILTER(Tabelle4;Tabelle4[3]=EARLIER([3]));[6];;DESC;Skip)
Die Aktualisierung ist hiermit erstaunlich schnell und kann mit der Rang-Formel mithalten. DAX-Formel RANKX liefert exakt dasselbe Resultat wie die Vorgabe mit RANG-Tabellenformel. (n.b. RANKX bietet im Gegensatz zu RANG sogar die Option "DENSE" d.h. bei Gleichplatzierungen wird der drauf folgende Rang nicht übersprungen)
Die Ausgabe als Pivot-Tabelle kann im Tabellenformat dargestellt werden. Um die Sortierung zu erhalten, habe ich lediglich in PQ noch einen Index hinzugefügt, welcher für Pivot (als erste Spalte) verwendet werden kann. Alternativ könnte man die Spaltenreihenfolge gemäss der gewünschten Sortierung ändern.
cu
Chris
AW: zur Vollständigkeit RANG-WENN in PowerPivot
24.01.2023 18:30:55
Christian
Hallo Chris,
interessant. Ich habe es sogar geschafft, nachzubauen, obwohl du nichts davon erwähnt hast dass ich die Tabelle dem Datenmodell zufügen muss.
Wenn jemand den Bregriff PowerPivot zum ersten mal hört, weiß er das leider nicht.
In der berechneten Spalte 2 habe ich mit =Tabelle4_2[Berechnete Spalte 1]=Tabelle4_2[8] überpfüft ob die Ergebnisse übereinstimmen.
Was ich jetzt allerdings noch nicht verstaden habe, kann ich das jetzt auch irgendwie in die eigentliche Mappe übertragen oder geht das nur in diesem PP Editor?
Zum Überspringen des Rangs, das ist von mir gewünscht, dass er übersprungen wird, wie es auch bereits in der Rang Formel der Fall war.
Danke für die viele Mühe
Christian
Userbild
und sorry...
24.01.2023 18:36:41
Christian
in dem Post davor habe ich mich etwas unfreundlich ausgedrückt, tut mir leid. Ich bin dir echt dankbar für die Mühe und Zeit die du investiert hast
AW: und sorry...
25.01.2023 08:10:33
ChrisL
Hi Christian
Danke für die Rückmeldung.
Habe ehrlich gesagt nicht damit gerechnet, dass Power-Pivot auch in XL2022 zur Verfügung steht. Umso mehr freut es mich, dass du dich an die Lösung rangewagt hast.
cu
Chris
gerne oWT
25.01.2023 08:35:25
Christian
.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige