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

Aggregat - Maxwert mit Bedingung

Aggregat - Maxwert mit Bedingung
03.12.2021 17:10:51
Chris
Hallo Zusammen,
ich habe folgende Frage, die mit MAXWENNs wahrscheinlich einfach zu klären wäre, leider habe ich aber kein Office 365:
https://www.herber.de/bbs/user/149558.xlsx
Es soll für jeden Namen (Spalte C) der Eintrag mit dem höchsten Datum (Spalte A) gelistet werden, wenn in Spalte B ein "*" N "*" enthalten ist.
Jeder Name soll daher nur maximal nur einen Eintrag haben. Ab L5-N8 habe ich die Soll-Werte manuell eingetragen damit es evtl. besser zu verstehen ist wo ich hin will.
Eine weitere Frage dazu:
Kann man die Daten aus 2 separaten Bereichen (hier dann z.B. L5 - N8 sowie P6-P14) einen globalen Bereich überführen der die Datumseinträge aus den beiden Bereichen dann chronologisch sortiert, hier im Beispiel von Spalte T-V?
Danke für euer Feedback wenn euch hier etwas einfällt und schönes Wochenende,
Chris

26
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: zunächst 1.; ermittele zunächst die Namen ...
03.12.2021 17:40:46
neopa
Hallo Chris,
... dann wird es einfacher.
in M13: =WENNFEHLER(AGGREGAT(14;6;A$5:A$50/(C$5:C$99=M13)/FINDEN("N";B$5:B$50)^0;1);"")
in L13: =WENNFEHLER(AGGREGAT(14;6;A$5:A$50/(C$5:C$99=M13)/FINDEN("N";B$5:B$50)^0;1);"")
und Formeln nach unten kopieren.
Wenn Du es nach Datum sortiert haben willst, nutze dies als Hilfsbereich und werte diesen entsprechend aus.
Alternativ dazu wäre es sicher über eine PQ-Lösung direkt lösbar.
Gruß Werner
.. , - ...
AW: zunächst 1.; ermittele zunächst die Namen ...
03.12.2021 18:13:35
Chris
Hallo Werner,
danke für deine schnelle Hilfe zu der Sache.
Kurze Rückfrage, es sieht so aus als wäre die Formel für Spalte "M" identisch wie mit Spalte "L", kannst du es bitte nochmal kopieren?
Bzgl. dem ^0 in der Formel, wird das nicht das Ergebnis automatisch immer auf 1 setzen?
Danke nochmal für die Rückmeldung
Chris
Anzeige
AW: ja, war zweimal die gleiche Formel kopiert...
03.12.2021 18:54:45
neopa
Hallo Chris,
... sorry, in M13 gehört natürlich:
=WENNFEHLER(INDEX(C:C;AGGREGAT(15;6;ZEILE(A$5:A$99)/FINDEN("N";B$5:B$99)^0/(ZÄHLENWENN(M$12:M12;C$5:C$99)=0);1));"")
Gruß Werner
.. , - ...
AW: ja, war zweimal die gleiche Formel kopiert...
03.12.2021 20:13:04
Chris
Hallo Werner,
jetzt funktioniert das einwandfrei, vielen Dank für deine Hilfe zu dem Thema.
"Schönes Wochenende" statt
"*"&"Schönes Wochenende"&"*"
Christian
AW: bitteschön, doch ...
04.12.2021 08:18:16
neopa
Hallo Chris,
... wenn Du wirklich 5000 Datenzeilen auswerten willst, wäre eine PQ-Auswertung, auf die ich gestern nur als alternative Lösungsmethode verwiesen hatte, wohl die effektivere Auswertung.
Gruß Werner
.. , - ...
Anzeige
AW: zu Deiner 2. Frage zunächst nachgefragt ...
03.12.2021 17:58:33
neopa
Hallo Chris,
... warum in P4 nicht folgende Formel:
=WENNFEHLER(AGGREGAT(15;6;A$5:A$5000/(A$5:A$5000&gt0)/(G$5:G$50000)/(ZÄHLENWENNS(P$4:P4;A$5:A$99;Q$4:Q4;C$5:C$5000)=0);1);"")
und in Q4 analog:
=WENNFEHLER(INDEX(C:C;AGGREGAT(15;6;ZEILE(A$5:A$5000)/(A$5:A$5000=P5)/(G$5:G$50000)/(ZÄHLENWENNS(P$4:P4;A$5:A$5000;Q$4:Q4;C$5:C$5000)=0);1));"")
und diese nach unten kopieren?
Wenn die zu 1.) ermittelten Formeln in L:N beginnend ab Zeile 5 stehen, dann kann Deine 2. Frage mit ja beantwortet werden.
Gruß Werner
.. , - ...
AW: und zu 2. nun zusätzlich noch nachgefragt ...
04.12.2021 09:10:20
neopa
Hallo Chris,
... Deine errechneten Ergebniswerte für den Bereich 2 in R13:R14 kann ich aus Deiner Beispieldatenliste in A5:H25 nicht wirklich nachvollziehen. Denn mE müsste diese beiden Ergebniswerte nicht 0 sondern 6 und 15 sein. Oder? Wenn nicht, dann erkläre bitte warum sie 0 sein sollen.
Auch Deine Datenzusammenstellung in Bereich 3 ist noch erklärungsbedürftig. Dort hast Du die Datenwerte für Deine "N"-Werte aus Spalte H, welche in Deinen Bereich 1 übernommen werden, mit den Datenwerten "Ergebnis" aus Spalte G Deines Bereiches 2 zusammen"gewürfelt". Soll das wirklich so sein?
Auf Deine Antworten kann ich frühesten am späteren Nachmittag reagieren, weil ich in Kürze erst einmal offline gehe.
Gruß Werner
.. , - ...
Anzeige
AW: und zu 2. nun zusätzlich noch nachgefragt ...
04.12.2021 11:18:20
Chris
Hallo Werner,
danke für die rege Diskussion zu meiner Fragestellung!
Es ist ganz bestimmt so, wie von Luschi und dir angesprochen, dass eine PQ Lösung effizienter wäre.
Allerdings geht es bei der Berechnung um eine Quartalsweise Auswertung und es wäre (vermutlich) kein Problem wenn dann die Berechnung etwas dauert.
Da dieses Tabellenblatt aber in einer größeren Tabelle eingebaut wird werde ich dann evtl noch eine Makro-Lösung brauchen welche die permanente Neuberechnung auf allen Blättern unterbindet.
Zu deiner Frage bzgl. der Zellen: R13 und R14:
Für die gesamte Spalte R soll gelten dass der letzte Eintrag maximal das Datum haben darf welches für den gleichen Namen in Spalte L gelistet ist.
Für R14 bedeutet das:
Hubert steht in L mit 30.09.2021, das bedeutet dass Werte aus Spalte "G" z.B. der Eintrag in Zeile 23 nur noch mit 0 erfasst werden sollen.
Für R13 gilt eine zusätzliche Regel: Zwar hat Theo am gleichen Tag Einträge in Spalte G und H und man würde jetzt eine 6 erwarten. Allerdings soll - wenn der Wert in "H" leer steht auch der Wert aus der Spalte G leer sein.
Deshalb sind die beiden Zellen R13 und R14 leer.
Zu deiner Rückfrage für den Bereich 3:
Genau richtig verstanden: Es sollen hier chronologisch, ältester Wert zuerst, die Werte aus dem Bereich 1 und 2 aufgelistet werden.
Hintergrund ist dass die Werte aus Bereich 1 zuerst festgestellt werden, damit dann die Werte des Bereich 2 ermittelt werden können. Im Bereich 3 sollen dann beide Bereiche zusammengefasst werden. Wichtig ist evtl. noch zu erwähnen dass die Einträge aus Bereich 1 & 2 natürlich auch wachsen können.
Danke bereits für die Hilfe zu den Bereichen 1 und 2, diese funktionieren einwandfrei, auch wenn die Lösung im Vergleich zur PQ nicht so effizient ist.
Ich habe im Internet einiges gesucht aber nichts dazu gefunden wie man 2 separate Bereiche in einem gesonderten Bereich sortieren kann. Zur Not mach ich es eben mit einer Hilfsspalte und sortiere dann.
Aber vielleicht fällt dir oder euch dazu etwas eleganteres ein ;-)
Viele Grüße und schönes Restwochenende,
Chris
Anzeige
AW: wenn dem so sein sollte, dann zunächst ...
04.12.2021 17:09:57
neopa
Hallo Chris,
... eine Anpassung meiner Formeln in L5:M5 und P5:Q5 und eine Vereinfachung Deiner Formeln in N5 und R5
Arbeitsblatt mit dem Namen 'Tabelle1'
 ABCDEFGHIJKLMNOPQR
4 Kategorie ABCErgebnisN   Bereich 1   Bereich 2  
513.09.2020CHubert5-203    30.12.2021Sarah20 08.09.2020Hubert9
613.09.2020CHubert0022    30.09.2021Hubert12 13.09.2020Hubert5
713.09.2020 Sarah 5 5    31.12.2021Martina15 13.09.2020Sarah5
830.12.2021NCSarah6  620   31.12.2022Theo0 15.09.2020Sarah-7
915.09.2020 Sarah -7 -7        13.11.2020Hubert9
1008.09.2020 Martina0000        31.12.2020Martina2
1108.09.2020 Hubert 9 9        30.12.2021Sarah6
1230.09.2021NSarah    15       31.12.2022Theo0
1327.10.2020 Hubert   0        31.12.2022Hubert0
1427.10.2020 Sarah   012          
1528.11.2020 Martina   0           
1630.09.2021NHubert 4  12          
1725.11.2020 Hubert000010          
1831.12.2021NMartina    15          
1931.12.2020NCMartina4-20212          
2013.11.2020 Hubert1 89           
2131.12.2020NCMartina               
2231.12.2022NCTheo 6 6           
2331.12.2022 Hubert   15           
2431.12.2023 Mia    15          
25                  

ZelleFormel
L5=WENNFEHLER(AGGREGAT(14;6;A$5:A$5000/(C$5:C$5000=M5)/FINDEN("N";B$5:B$5000)^0;1);"")
M5=WENNFEHLER(INDEX(C:C;AGGREGAT(15;6;ZEILE(A$5:A$5000)/FINDEN("N";B$5:B$5000)^0/(ZÄHLENWENN(M$4:M4;C$5:C$5000)=0);1));"")
N5=WENN(L5="";"";SUMMEWENNS(H:H;A:A;L5;C:C;M5))
P5=WENNFEHLER(AGGREGAT(15;6;A$5:A$5000/(A$5:A$5000&gt0)/(G$5:G$5000>0)/(ZÄHLENWENNS(P$4:P4;A$5:A$5000;Q$4:Q4;C$5:C$5000)=0);1);"")
Q5=WENNFEHLER(INDEX(C:C;AGGREGAT(15;6;ZEILE(A$5:A$5000)/(A$5:A$5000=P5)/(G$5:G$5000>0)/(ZÄHLENWENNS(P$4:P4;A$5:A$5000;Q$4:Q4;C$5:C$5000)=0);1));"")
R5=WENNFEHLER(WENN((AGGREGAT(14;6;L$5:L$99/(M$5:M$99=Q5);1)&gt=P5)*(SVERWEIS(Q5;M:N;2;0)&gt0);SUMMEWENNS(G:G;A:A;P5;C:C;Q5);0/P5);"")
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.02] MS Excel 2010
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

Gruß Werner
.. , - ...
Anzeige
AW: und mit 3 komplexen Formeln ...
04.12.2021 19:42:47
neopa
Hallo Chris,
... kann nun auch die Ergebnisliste Bereich 3 ermittelt werden.
Durch Deine Spezialbedingung (wie z.B. für Theo) wurde es zwar komplizierter als gedacht, aber doch noch mit Formeln auch ohne Hilfsspalten lösbar. Mit einer weiteren benannten Formel neben _HNr, hätte ich die Formeln noch etwas transparenter gestalten können. Darauf habe ich aber jetzt verzichtet.
Sollten mehr als 94 Datenzeilen im Bereich 1 und oder 2 ermittelt werden können, dann ersetze die 99 in nachfolgenden Formeln durch eine entsprechende größere Zeilennummer.
Formel U5 nach rechts und dann T5:U5 ziehend weit genug nach unten kopieren:
Arbeitsblatt mit dem Namen 'Tabelle1'
 LMNOPQRSTUV
4Bereich 1   Bereich 2   Bereich 3  
530.12.2021Sarah20 08.09.2020Hubert9 08.09.2020Hubert9
630.09.2021Hubert12 13.09.2020Hubert5 13.09.2020Hubert5
731.12.2021Martina15 13.09.2020Sarah5 13.09.2020Sarah5
831.12.2022Theo0 15.09.2020Sarah-7 15.09.2020Sarah-7
9    13.11.2020Hubert9 13.11.2020Hubert9
10    31.12.2020Martina2 31.12.2020Martina2
11    30.12.2021Sarah6 30.09.2021Hubert12
12    31.12.2022Theo0 30.12.2021Sarah20
13    31.12.2022Hubert0 30.12.2021Sarah6
14        31.12.2021Martina15
15        31.12.2022Theo0
16        31.12.2022Hubert0
17           

NameBezug
_HNr=AGGREGAT(15;6;(ZEILE(Tabelle1!C$5:C$99)+SPALTE(Tabelle1!D4:I4)%)/(Tabelle1!$L$5:$P$99=Tabelle1!$T4)/(Tabelle1!$T4>"")/(ZÄHLENWENNS(Tabelle1!$L$5:$L$99;Tabelle1!$P$5:$P$99;Tabelle1!$M$5:$M$99;Tabelle1!$Q$5:$Q$99;Tabelle1!$N$5:$N$99;Tabelle1!$R$6:$R$99)*(Tabelle1!$P$5:$P$99>"")=0);ZÄHLENWENN(Tabelle1!$T$5:$T4;Tabelle1!$T4))

ZelleFormel
T5=WENNFEHLER(AGGREGAT(15;6;L$5:P$99/ISTTEXT(M$5:Q$99)/(L$5:P$99>"")/(ZÄHLENWENNS(L$5:L$99;P$5:P$99;M$5:M$99;Q$5:Q$99;N$5:N$99;R$6:R$99)*(P$5:P$99>"")=0);ZEILE(A1));"")
U5=WENNFEHLER(INDEX($A:$R;_HNr;REST(_HNr;1)*100);"")
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.02] MS Excel 2010
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

Gruß Werner
.. , - ...
Anzeige
AW: und mit 3 komplexen Formeln ...
04.12.2021 21:52:37
Chris
Hallo Werner,
Danke für deine Rückmeldung und die ausgetüftelte Lösung.
Ich werde diese Anfang nächster Woche in der Ursprungsdatei testen und dir der Vollständigkeit-halber Rückmeldungen geben. In der Beispiel-Datei ist es perfekt, oft liegt der Teufel jedoch im Detail.
Vielen Dank vorab dass du dich der Sache so detailliert angenommen hast.
Chris
AW: bitteschön; vergleiche mal mit PQ-Lösung owT
05.12.2021 16:37:09
neopa
Gruß Werner
.. , - ...
AW: bitteschön; vergleiche mal mit PQ-Lösung owT
06.12.2021 09:56:00
Chris
Hallo Werner,
zwei Fragen zu dem Thema:
Kannst du bitte das letzte File mit der formelbasierten Lösung hochladen so dass ich das direkt im File verfolgen kann?
In der Zelle T5 nutzt du "Zählenwenns" und die erste Zeile ist jeweils Zeile 5 (L, P, M; Q und N) aber für R fängt es in der Zeile 6 an, sollte es evtl hier auch die Zeile 6 sein?
Danke für die Unterstützung und viele Grüße
Chris
Anzeige
AW: nun ...
06.12.2021 11:15:17
neopa
Hallo Chris,
... natürlich könnte ich auch die Datei hier einstellen, doch das hilft Dir mE wenig.
Möglicherweise hast Du nur ein Problem, die benannte Formel _HNr richtig zu definieren. Diese musst Du bei aktivierter Zelle L5 im Namensmanager so übernehmen wie angegeben. Die von mir dargestellten Formeln stehen alle in Zeile 5 also auch die für Spalte R.
So nachvollziehbar?
Gruß Werner
.. , - ...
AW: nun ...
06.12.2021 11:40:13
Chris
Hallo Werner,
danke für die Rückmeldung.
Die Formeln beginnen alle in Zeile 5, wie du angemerkt hast, allerdings scheint bei folgenden beiden Formeln der Bezug erst bei R6 zu starten:
T5:
=WENNFEHLER(AGGREGAT(15;6;L$5:P$99/ISTTEXT(M$5:Q$99)/(L$5:P$99"")/(ZÄHLENWENNS(L$5:L$99;P$5:P$99; M$5:M$99;Q$5:Q$99;N$5:N$99;R$6:R$99)*(P$5:P$99"")=0);ZEILE(A1));"")
Namensmanager:
=AGGREGAT(15;6;(ZEILE(Tabelle1!C$5:C$99)+SPALTE(Tabelle1!D4:I4)%)/(Tabelle1!$L$5:$P$99=Tabelle1!$T4) /(Tabelle1!$T4"")/(ZÄHLENWENNS(Tabelle1!$L$5:$L$99;Tabelle1!$P$5:$P$99;Tabelle1!$M$5:$M$99; Tabelle1!$Q$5:$Q$99;Tabelle1!$N$5:$N$99;Tabelle1!$R$6:$R$99)*(Tabelle1!$P$5:$P$99"") =0);ZÄHLENWENN(Tabelle1!$T$5:$T4;Tabelle1!$T4))
Mein Problem ist dass, selbst wenn ich durch R5 ersetze die Zelle U5 kein Ergebnis liefert, da ist bei mir noch etwas durcheinander.
Für die Spalte V bräuchte ich zudem auch noch die Formel, deshalb könnte mir die Datei schon helfen.
Danke für dein Feedback & viele Grüße
Chris
Anzeige
AW: ein Schreibfehler meinerseits, allerdings ...
06.12.2021 12:33:58
neopa
Hallo Chris,
... hat das in der Beispieldatei keine Folgen und so blieb es von mir unbemerkt. Sorry trotzdem dafür, dass ich das vorhin nicht schon festgestellt hatte. In U5 wird "Hubert" ermittelt und wenn Du diese Formel nach rechts kopierst auch V5. Bin jetzt erst einmal ca. eine Stunde offline.
Gruß Werner
.. , - ...
AW: ein Schreibfehler meinerseits, allerdings ...
07.12.2021 09:52:03
Chris
Hallo Werner,
vielen Dank für deine Hilfe, die Zusammenführung in Bereich 3 funktioniert jetzt.
Der Name wurde in Zeile 5 zuerst nicht angezeigt, ich habe dann im Namensmanager noch kleine Änderungen vorgenommen dann ging es.
Danke und viele Grüße
Chris
Anzeige
AW: bitteschön owT
07.12.2021 14:51:42
neopa
Gruß Werner
.. , - ...
AW: und die PQ-Lösung dafür ...
05.12.2021 16:36:11
neopa
Hallo Chris, hallo Luschi,
... kommt mit mit je einer Abfragen für Deine 3 Bereiche aus. Siehe: https://www.herber.de/bbs/user/149601.xlsx Bereich 2 hab ich nicht als Tabelle ausgegeben, weil es ja scheinbar nur eine Zwischenlösung sein sollte. Diese könnte aber bei Bedarf mit ein paar Mausklicks natürlich auch noch im Tabellenblatt dargestellt werden.
Gruß Werner
.. , - ...
AW: und die PQ-Lösung dafür ...
06.12.2021 08:16:26
Luschi
Hallo Werner,
wenn ich Deine Beispieldatei herunterlade und 'Daten-alle aktualisieren' betätige, erhalte ich folgende Meldung:
Userbild
Ob es mit den noch vorhanden Formeln in 'V27:W30' zu tun oder andere Ursachen hat, muß ich noch testen.
Gruß von Luschi
aus klein-Paris
AW: kann ich so nicht nachvollziehen ...
06.12.2021 09:02:21
neopa
Hallo Luschi,
... jedenfalls nicht in meiner XL2016er Version.
Allerdings stehen in der eingestellten Datei in M10:P## noch ein paar zu löschende "Formelleichen" mit Bezugsfehlern. Lösche diese mal. Dagegen standen und stehen In V27:W30 bei mir keine Formeln.
Gruß Werner
.. , - ...
AW: Aggregat - Maxwert mit Bedingung
03.12.2021 18:06:25
Luschi
Hallo Chris,
hier mal eine PQ-Lösung zur 1. Frage, die mit ein paar Mausklicks in 2 Minuten erledigt war.
https://www.herber.de/bbs/user/149560.xlsx
Gruß von Luschi
aus klein-Paris
AW: Aggregat - Maxwert mit Bedingung
03.12.2021 20:06:36
Luschi
Hallo Chris,
zum 2. Problem: auch dafür bietet PQ einfachste Handhabung läßt die Lösung zu einem Kinderspiel werden.
https://www.herber.de/bbs/user/149564.xlsx
Gruß von Luschi
aus klein-Paris
AW: Aggregat - Maxwert mit Bedingung
03.12.2021 20:10:22
Chris
Hallo Luschi,
vielen dank auch für deine Antworten auf das Problem. Ich muss mich mit PQ erst noch beschäftigen, auch inwiefern PQ Lösungen in bereits bestehende umfangreiche Tabellenberechnungen eingefügt werden können muss ich mir ansehen.
Danke für das Feedback und ein schönes Wochenende,
Chris
AW: nein, so sicher nicht ...
04.12.2021 09:08:52
neopa
Hallo Luschi,
... denn mit einer PQ-Lösung sollten ja nicht Datenergebnisse aus Formelberechnungen (in Bereich 2) zur Ergebnistabelle Bereich 3 zusammenzuführen sein, sondern die Ergebnistabelle Bereich 3 müsste dann schon gänzlich ohne Formelzwischenrechnungen mit PQ erstellt werden. Und dann ist es mE schon zumindest kein Kinderspiel mehr. Dies zumal mir die Vorgaben/Berechnungen von Chris zu seinem Bereich 2 teilweise momentan nicht stimmig erscheinen. Sieh dazu auch mein Folgebeitrag (zur 2. Frage ...) an Chris.
Gruß Werner
.. , - ...
AW: hierzu ...
04.12.2021 08:31:13
neopa
Hallo Luschi,
... ich habe Deinen PQ-Vorschlag nachfolgend den Vorgaben von Chris entsprechend noch angepasst zu:
let
Quelle = Excel.CurrentWorkbook(){[Name="tab_Daten"]}[Content],
#"Geänderter Typ" = Table.TransformColumnTypes(Quelle,{{"Datum", type date}, {"Kategorie", type text}, {"Spalte1", type text}, {"A", Int64.Type}, {"B", Int64.Type}, {"C", Int64.Type}, {"Ergebnis", Int64.Type}, {"N", Int64.Type}}),
#"Gefilterte Zeilen" = Table.SelectRows(#"Geänderter Typ", each Text.Contains([Kategorie], "N")),
#"Sortierte Zeilen" = Table.Sort(#"Gefilterte Zeilen",{{"Datum", Order.Descending}}),
#"Andere entfernte Spalten" = Table.SelectColumns(#"Sortierte Zeilen",{"Datum", "Spalte1", "N"}),
#"Entfernte Duplikate" = Table.Distinct(#"Andere entfernte Spalten", {"Spalte1"}),
#"Sortierte Zeilen1" = Table.Sort(#"Entfernte Duplikate",{{"Datum", Order.Ascending}})
in
#"Sortierte Zeilen1"
Gruß Werner
.. , - ...

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige