Komplexe Wenn, Dann Anforderung

Bild

Betrifft: Komplexe Wenn, Dann Anforderung
von: Glenn Vogt
Geschrieben am: 26.11.2015 15:58:23

Hallo,
ich stehe vor folgendem Problem. In der unten eingefügten Tabelle soll eine Formel berechnen, welcher zeitliche Abstand zwischen zwei Daten in Spalte A besteht, und zwar zwischen dem Datum einer Zeile mit einem positiven Wert in Spalte F und dem Datum einer anderen Zeile mit genau dem gleichen positiven Wert aber in Spalte G.
Die Formel soll also für jeden positiven Wert in Spalte F eine genaue Entsprechung in Spalte G suchen und dann deren jeweilige Daten aus Spalte A vergleichen und die Differenz in Tagen ausgeben.
Beispiel: Die Formel würde den Wert in Zelle F1 mit jedem Wert in Spalte G vergleichen, Zelle G2 als Übereinstimmung identifizieren und als Ergebnis die Differenz in Tagen zwischen A1 und A2 ausgeben. Und das ließe sich dann für jeden Wert größer als 0 in Spalte F fortführen.
Ich hoffe ihr könnt mir helfen, vielen Dank schonmal!
Beste Grüße
Glenn
Userbild

Bild

Betrifft: AW: mit AGGREGAT() und MIN() und MAX() ...
von: ... neopa C
Geschrieben am: 26.11.2015 16:09:42
Hallo Glenn,
... so: =WENN(F1=0;"";MAX(AGGREGAT(15;6;A$1:A$99/(G$1:G$99=F1);1);A1)-MIN(AGGREGAT(15;6;A$1:A$99/(G$1:G$99=F1);1);A1))+1 und je nach "Bedarf" das +1 evtl. streichen und dann die Formel ziehend nach unten kopieren.
Gruß Werner
.. , - ...

Bild

Betrifft: AW: mit AGGREGAT() und MIN() und MAX() ...
von: Glenn Vogt
Geschrieben am: 26.11.2015 16:47:46
Danke für die schnelle Antwort, funktioniert bestens!
Nächster Schritt wäre folgendes: Kann man noch einen Befehl einbauen, sodass die Formel nicht nur wenn der Wert in Spalte F "0" ist eine leere Zelle als Ergebnis ausgibt, sondern auch wenn die Formel in Spalte G keine Entsprechung für den jeweiligen Wert in Spalte F findet?
Sodass also wirklich nur ein Ergebnis ausgegeben wird wenn der Wert in Spalte F nicht "0" war UND wenn die Formel in Spalte G eine genaue Entsprechung für den Wert in Spalte F gefunden hat?

Bild

Betrifft: AW: dann noch WENNFEHLER() ...
von: ... neopa C
Geschrieben am: 26.11.2015 16:56:58
Hallo Glenn,
... z.B. so: =WENN(F3=0;"";WENNFEHLER(MAX(AGGREGAT(15;6;A$1:A$99/(G$1:G$99=F3);1);A3)-MIN(AGGREGAT(15;6;A$1:A$99/(G$1:G$99=F3);1);A3);""))
Gruß Werner
.. , - ...

Bild

Betrifft: AW: dann noch WENNFEHLER() ...
von: Glenn Vogt
Geschrieben am: 27.11.2015 14:37:00
Hallo Werner,
danke, funktioniert auch - allerdings gibt es noch eine kleine Komplikation. Es funktioniert nämlich für das, was ich damit machen will, nur korrekt wenn der Wert, der in Spalte G gesucht wird, dort auch nur ein einziges Mal vorkommt. Manche Beträge kommen mehrmals vor, da kommt die Formel dann durcheinander und wählt sich offenbar irgendeinen Wert aus.
Die unten eingefügte Tabelle enthält ungefähr die gleichen Werte wie vorher, zusätzlich aber noch die zugehörigen Vorgangskennzeichen. Hintergrund: Spalte D enthält Auszahlungen, Spalte F die idealerweise dazu passenden Rückzahlungen. Die Formel soll berechnen, wie viele Tage zwischen Aus- und Rückzahlung liegen. Die Formel soll also genau das machen was sie bisher macht, nur soll sie darüber hinaus auch für jede Zeile noch die Vorgangskennzeichen in Spalte C mit einbeziehen.
Beispiel: So wie die Formel jetzt ist würde sie für Zelle D11 die ganze Spalte E nach "2.000" durchsuchen. Den Wert gibt es dort aber mehrmals. Um jetzt genau den richtigen Wert (nämlich E12) auszuwählen und dessen Datum mit dem Datum in A11 zu vergleichen, müsste die Formel irgendwie noch die Übereinstimmung der beiden Aktenzeichen in Spalte C prüfen. Geht das?
Viele Grüße,
Glenn
Userbild

Bild

Betrifft: AW: darauf hatte ich schon fast erwartet ...
von: ... neopa C
Geschrieben am: 27.11.2015 15:35:53
Hallo Glenn,
... aber in Deinen bisherigen Daten fehlte eine eindeutige zusätzliche Zuordnungsmöglichkeit.
Die lässt sich nun auch in der anzupassender Formel berücksichtigen. Aber dazu solltest Du mal Deine Beispieldatei als Exceldatei hoch laden und nicht nur als Bild.
Gruß Werner
.. , - ...

Bild

Betrifft: AW: darauf hatte ich schon fast erwartet ...
von: Glenn Vogt
Geschrieben am: 27.11.2015 15:50:18
Hallo Werner,
gerne - ich hoffe das funktioniert so:
https://www.herber.de/bbs/user/101853.xlsx
Hatte nicht daran gedacht dass man natürlich solche Sachen dem Programm sagen muss, deshalb hatte ich die Kennzeichen erst weggelassen...
Aus der Tabelle wird auch ersichtlich dass es teilweise Zahlungen gibt die sich in der Summe ausgleichen, aber aus völlig unterschiedlichen Teilbeträgen bestehen (Beispiele jeweils farbig markiert). Wenn man das auch noch irgendwie verpacken kann wäre ich überglücklich :D
Ganz vielen Dank für die Hilfe!
Gruß,
Glenn

Bild

Betrifft: AW: das ist aber nun wieder ganz anders ...
von: ... neopa C
Geschrieben am: 27.11.2015 16:58:05
Hallo Glenn,
... welche Zeit soll denn da nun berechnet werden? Was ist wenn es dann immer noch Abweichungen gibt und sei es nur Cent-Beträge?
Gruß Werner
.. , - ...

Bild

Betrifft: AW: das ist aber nun wieder ganz anders ...
von: Glenn Vogt
Geschrieben am: 27.11.2015 17:04:12
Hallo Werner,
der letzte Zusatz, das mit den Zahlungen die aus Teilbeträgen bestehen, wäre nur optional! Quasi als Sahnehäubchen :)Ist vielleicht auch zu kompliziert; gerade wenn die Teilzahlungen zu unterschiedlichen Zeitpunkten erfolgen bin ich mir selber noch nicht ganz sicher welches Datum ich dann als Referenz verwenden soll.
Wichtig ist auf jeden Fall erstmal wie gehabt der Abgleich von Beträgen die auf den Cent genau übereinstimmen. Das andere können wir einfach weglassen, Hauptsache die Berechnung für die identischen Beträge läuft.
Viele Grüße
Glenn

Bild

Betrifft: AW: nun noch das gewünschte "Sahnehäupchen" ...
von: neopa C
Geschrieben am: 28.11.2015 17:38:28
Hallo Glenn,
... allerdings setze ich nachfolgend im voraus, das Deine Liste so sortiert ist, wie derzeitig in Deiner Beispieldatei. D.h. sortiert zuerst nach Vorgang und danach aufwärts nach Buchungsdatum!
Andernfalls würde die Formel nur unnötig länger (analog dem Formelteil vom Freitag, wo noch kein Vorgang berücksichtigt ist).
Wie bereits geschrieben musst / kannst Du dem Ergebnis noch eine 1 dazu addieren (wenn der Anfangs- und Endtag mitgezählt werden soll:

 ABCDE
1BuchungsdatumVorgangSollHabenTage
201.04.201554001//1526707
308.04.201554001//150267 
422.06.201554001//157503
525.06.201554001//15075 
612.10.201554001//1575004
716.10.201554001//150750 
827.01.201554003//158.824,68049
927.01.201554003//15966,990 
1002.02.201554003//1505.108,34 
1117.03.201554003//1504.683,33 
1221.01.201554004//156.413,72026
1316.02.201554004//1506.413,72 
1429.01.201554006//154.736,6607
1529.01.201554006//15782,310 
1605.02.201554006//1505.518,97 
1712.01.201554007//152.126,84024
1805.02.201554007//1502.126,84 
1913.01.201554008//15784,5208
2013.01.201554008//15154,10 
2121.01.201554008//150938,62 
2222.06.201554009//152.000,0001
2323.06.201554009//1502.000,00 
2414.09.201554009//1580001
2515.09.201554009//150800 
2627.01.201554010//152.874,99017
2713.02.201554010//1502.874,99 

Formeln der Tabelle
ZelleFormel
E2=WENN(C2=0;"";WENNFEHLER(AGGREGAT(15;6;A$2:A$99/(B$2:B$99=B2)/(D$2:D$99=C2); 1)-A2;WENN((SUMMEWENN(B:B;B2;C:C)=SUMMEWENN(B:B;B2;D:D))*(ZÄHLENWENN(B$1:B2;B2)=1); VERWEIS(9;1/(B$1:B$99=B2); A:A)-A2;"")))


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...

Bild

Betrifft: AW: nun noch das gewünschte "Sahnehäupchen" ...
von: Glenn Vogt
Geschrieben am: 30.11.2015 11:55:02
Hallo Werner,
habe die Formel jetzt in die vollständige Liste eingefügt - sie tut genau was sie soll, besten Dank dafür. Leider tauchen in der Liste aber immer wieder Sonderfälle auf, wo das Ergebnis zwar rechnerisch richtig ist aber die durchschnittliche Rückzahlungsdauer verzerrt.
Wenn zum Beispiel ein Großteil der Auszahlung schon am nächsten Tag wieder reinkommt und ein winziger Teilbetrag erst nach Monaten nachgezahlt wird, nimmt die Formel natürlich das letzte Datum. Logisch komplett richtig, für meine Statistik wirkt es aber verfälschend. Außerdem gibt es Fälle, in denen Beträge zuerst im Haben auftauchen und dann erst später im Soll. Da gibt die Formel logischerweise eine negative Dauer in Tagen aus. Beispiele habe ich in gelb markiert.
Und schließlich gibt es noch Fälle, wo ich mir gar nicht erklären kann was da passiert ist. Die Probleme tauchen auf, wenn in einem Vorgang eine Zahlung aus Teilbeträgen rausging und komplett wieder reinkam, und dann später im gleichen Vorgang nochmal ein Betrag rausging und auf den Cent genau wieder reinkam. Zwei Beispiele habe ich orange markiert. Die Zahlen in rot ergeben für mich keinen Sinn.
Falls es dafür keine Lösung gibt wäre es vielleicht sinnvoll, die Formel so zu bauen, dass sie die Dauer in Tagen so wie vorher nur bei Beträgen berechnet die 1:1 auf den Cent genau so wieder reinkommen wie sie rausgegangen sind, allerdings anders als vorher dabei auch die Vorgangsnummern mit berücksichtigt um bei mehrfach auftauchenden Beträgen klar zuordnen zu können. Was meinst du?
Viele Grüße und ein ganz großes Dankeschön für deine Geduld!
Glenn
https://www.herber.de/bbs/user/101895.xlsx

Bild

Betrifft: AW: dazu wäre noch zu klären ...
von: ... neopa C
Geschrieben am: 30.11.2015 18:09:22
Hallo Glenn,
... ob immer nur die Zeitdiffenzen nur zu ermitteln sind, wenn der erste Wert ein SOLLwert ist?
Ich schau es mir dann Morgen noch einmal an.
Gruß Werner
.. , - ...

Bild

Betrifft: AW: dazu wäre noch zu klären ...
von: Glenn
Geschrieben am: 01.12.2015 08:13:19
Hallo Werner,
ja genau, die Zeitdifferenzen sollen nur ermittelt werden wenn der erste Wert ein Soll-Wert ist.
Viele Grüße
Glenn

Bild

Betrifft: AW: dann geschachteltes AGGREGAT() zusätzlich ...
von: neopa C
Geschrieben am: 01.12.2015 08:59:39
Hallo Glenn,
... in E2:

=WENN((C2=0)+(B2=B1);"";WENNFEHLER(AGGREGAT(15;6;A$2:A$99/(B$2:B$99=B2)/(D$2:D$99=C2);1)-A2;
WENN((SUMMEWENN(B:B;B2;C:C)=SUMMEWENN(B:B;B2;D:D))*(ZÄHLENWENN(B$1:B2;B2)=1);
AGGREGAT(15;6;A$2:A$99/(B$2:B$99=B2)/(D$2:D$99=AGGREGAT(14;6;D$2:D$99/(B$2:B$99=B2);1));1)-A2;"")))

Gruß Werner
.. , - ...

Bild

Betrifft: AW: dann geschachteltes AGGREGAT() zusätzlich ...
von: Glenn
Geschrieben am: 01.12.2015 09:38:24
Hallo Werner,
jetzt gibt es noch ein kleines Problem immer dann, wenn in einem Vorgang ein zweites Mal ein Soll/Haben-Paar mit genauer Übereinstimmung auftaucht. Dann berechnet die Formel nur die Zeitdifferenz für das erste Wertepaar, siehe gelbe Markierungen:
https://www.herber.de/bbs/user/101926.xlsx
Hat das vielleicht was mit deiner Frage von vorher zu tun? Es soll ja grundsätzlich immer dann die Zeitdifferenz berechnet werden, wenn der erste Wert der Wertepaare in der Chronologie ein Soll-Wert ist. Manchmal taucht aber im gleichen Vorgang eben noch ein zweiter Soll-Wert später in der Chronologie auf, für den ebenfalls die Zeitdifferenz berechnet werden könnte...
Viele Grüße
Glenn

Bild

Betrifft: AW: dann ohne Prüfung mit (B2=B1) aber ...
von: neopa C
Geschrieben am: 01.12.2015 10:41:57
Hallo Glenn,
... dafür in E2 mit einer Umgestaltung der ersten Hauptprüfung; so:
=WENN(C2=0;"";WENNFEHLER(MAX(AGGREGAT(15;6;A2:A$8517/(B2:B$8517=B2)/(D2:D$8517=C2);1)-A2;0);WENN((SUMMEWENN(B:B;B2;C:C)=SUMMEWENN(B:B;B2;D:D))*(ZÄHLENWENN(B$1:B2;B2)=1);AGGREGAT(15;6;A$2:A$8517/(B$2:B$8517=B2)/(D$2:D$8517=AGGREGAT(14;6;D$2:D$8517/(B$2:B$8517=B2);1));1)-A2;"")))
Gruß Werner
.. , - ...

Bild

Betrifft: AW: dann ohne Prüfung mit (B2=B1) aber ...
von: Glenn
Geschrieben am: 01.12.2015 10:55:31
Hallo Werner,
fantastisch, jetzt passt es! Letzte Anfrage zum Abschluss – diese Formel hier, die wir ganz am Anfang mal hatten, berechnet ja ebenfalls die Zeitdifferenz aber eben nur für Soll-Werte, für die ein auf den Cent genau übereinstimmender Haben-Wert existiert:
=WENN(F3=0;"";WENNFEHLER(MAX(AGGREGAT(15;6;A$1:A$99/(G$1:G$99=F3);1);A3)-MIN(AGGREGAT(15;6;A$1:A$99/(G$1:G$99=F3);1);A3);""))
Allerdings mit dem Manko, dass sie eben die Vorgangsnummern noch nicht miteinbezieht und dadurch bei zufällig mehrfach identisch auftauchenden Beträgen teilweise Werte in Bezug zueinander setzt, die eigentlich nicht zusammengehören. Wie würde man da jetzt noch die Berücksichtigung der Vorgangsnummern einfügen, sodass die Formel weiterhin die Zeitdifferenz nur berechnet wenn der Haben-Wert genau mit dem Soll-Wert übereinstimmt, aber eben innerhalb desselben Vorgangs und nicht wie vorher allgemein?
Das wäre nämlich noch die perfekte Ergänzung, dann hätte ich eine Auswertung nur für identische Beträge und eine Auswertung die auch Teilbeträge miteinbezieht, und könnte die parallel nutzen.
Viele Grüße
Glenn

Bild

Betrifft: AW: dafür bedarf es nur noch den 1. Formeleil ...
von: neopa C
Geschrieben am: 01.12.2015 11:57:34
Hallo Glenn,
... der vorhin eingestellten Formel. Für diese habe ich eben festgestellt, dass da noch ein "Blindgänger" enthalten ist, der nicht benötigt wird.
Also ausreichend gewesen wäre für die "komplette" Lösung:

=WENN(C2=0;"";WENNFEHLER(AGGREGAT(15;6;A2:A$8517/(B2:B$8517=B2)/(D2:D$8517=C2);1)-A2; WENN((SUMMEWENN(B:B;B2;C:C)=SUMMEWENN(B:B;B2;D:D))*(ZÄHLENWENN(B$1:B2;B2)=1);AGGREGAT(15;6; A$2:A$8517/(B$2:B$8517=B2)/(D$2:D$8517=AGGREGAT(14;6;D$2:D$8517/(B$2:B$8517=B2);1));1)-A2;"")))

Wenn die gesplitteten Werte nicht berücksichtigt werden sollen, dann reicht in F2 einfach:
=WENN(C2=0;"";WENNFEHLER(AGGREGAT(15;6;A2:A$8517/(B2:B$8517=B2)/(D2:D$8517=C2);1)-A2; ""))
Beide Formeln setzen voraus, dass das das Datenlisting, sowie bereits angegeben sortiert ist. Bei meiner ersten Formel hier im thread, auf die Du Dich eben noch mal bezogen hattest, war die Sortierung egal. Die solltest Du aber vornehmen. Anderenfalls stimmen die Ergebnisse der obigen ersten Formel im Beitrag nicht mehr.
Doch um trotzdem Deine konkrete Frage zu beantworten, dann z.B. in H2 so:
=WENN(C2=0;"";WENNFEHLER(MAX(AGGREGAT(15;6;A$1:A$99/(D$1:D$99=C2)/(B$1:B$99=B2);1);A2) -MIN(AGGREGAT(15;6;A$1:A$99/(D$1:D$99=C2)/(B$1:B$99=B2);1);A2);""))
Gruß Werner
.. , - ...

Bild

Betrifft: AW: dafür bedarf es nur noch den 1. Formeleil ...
von: Glenn
Geschrieben am: 01.12.2015 13:16:08
Hallo Werner,

die beiden Formeln funktionieren jetzt perfekt. War aber doch nicht die letzte Frage :D
Ich überlege, ob ich als drittes noch eine Variation der zweiten Formel mit gesplitteten Werden dazunehme. Die jetzige Version berücksichtig ja bei der Berechnung der zeitlichen Differenz zu jedem Soll-Wert immer den Haben-Wert mit dem unmittelbar nächsten Datum.
Wenn diese Formel
=WENN(C2=0;"";WENNFEHLER(AGGREGAT(15;6;A2:A$8517/(B2:B$8517=B2)/(D2:D$8517=C2);1)-A2; WENN((SUMMEWENN(B:B;B2;C:C)=SUMMEWENN(B:B;B2;D:D))*(ZÄHLENWENN(B$1:B2;B2)=1);AGGREGAT(15;6; A$2:A$8517/(B$2:B$8517=B2)/(D$2:D$8517=AGGREGAT(14;6;D$2:D$8517/(B$2:B$8517=B2);1));1)-A2;"")))
bei gesplitteten Werten die Zeitdifferenzen zwischen einem Soll-Wert und dem jeweils zeitlich nächsten zugehörigen Haben-Wert berechnet, dann müsste man da noch einen Befehl einfügen damit die Formel die Differenz zwischen dem Soll-Wert und dem jeweils zeitlich letzten zugehörigen Haben-Wert berechnet.
So ähnlich hatten wir das schon einmal in einem vorherigen Beitrag:
=WENN(C2=0;"";WENNFEHLER(AGGREGAT(15;6;A$2:A$9999/(B$2:B$9999=B2)/(D$2:D$9999=C2); 1)-A2;WENN((SUMMEWENN(B:B;B2;C:C)=SUMMEWENN(B:B;B2;D:D))*(ZÄHLENWENN(B$1:B2;B2)=1); VERWEIS(9;1/(B$1:B$9999=B2);A:A )-A2;"")))
Allerdings wurde hier teilweise die Dauer in negativen Werten ausgegeben, wenn im zeitlichen Ablauf der Haben-Wert zuerst auftauchte und nicht der entsprechende Soll-Wert. Vielleicht kann man das noch mit einbauen, dass die Formel dann auch immer nur die Differenz berechnet wenn der Soll-Wert al erstes auftaucht?
Viele Grüße
Glenn

Bild

Betrifft: AW: da hast Du etwas nicht richtig aufgefasst ...
von: neopa C
Geschrieben am: 01.12.2015 15:13:31
Hallo Glenn,
... die erst aufgeführte Formel ermittelt nicht zwischen: "...dem jeweils zeitlich nächsten zugehörigen Haben-Wert" sondern zu dem dazugehörigen größten HABEN-Wert.
Die Berechnung zu dem dazugehörigem letzten HABEN-Wert mit der Zweiten der VERWEIS()-Formel wolltest Du ja nicht nur wegen der teilweise negativen Ergebniswerte sondern auch deswegen nicht haben, weil da die Zeitdifferenz zu groß werden könnnn (wenn evtl. nur noch ein kleiner zugehöriger Restbetrag zu einem sehr späten Zeitpunkt in die HABEN-Seite eingeht)
Du musst abwägen, was für Dich wichtiger ist. Und das wäre?
Gruß Werner
.. , - ...

Bild

Betrifft: AW: da hast Du etwas nicht richtig aufgefasst ...
von: Glenn
Geschrieben am: 01.12.2015 15:48:56
Hallo Werner,
danke für die Erklärung, das war mir nicht bewusst!
Wichtig ist eigentlich alles davon :) Es gibt jeweils ein anderes Bild, das dann im Gesamtkontext jeweils eine andere Aussage liefert (ich errechne aus den Einzelwerten immer die die durchschnittliche Zeitdifferenz).
Dafür habe ich jetzt:
1. Eine Berechnung, die nur identische Beträge berücksichtig.
2. Eine Berechnung, die nur den größten HABEN-Betrag berücksichtigt.
3. Eine Berechnung, die nur den letzten HABEN-Betrag berücksichtigt (aber teilweise auch Negativwerte ausgibt).
Gut wäre eben noch, wenn Nr. 3 anstatt negativer Laufzeiten in dem jeweiligen Fall (nämlich wenn der HABEN-Wert dem SOLL-Wert zeitlich vorgelagert ist) dann eine leere Zelle ausgeben würde.
Und es noch eine vierte Berechnung geben würde die so wie 2. und 3. funktioniert aber halt den ersten zugehörigen HABEN-Betrag berücksichtigt.
Dann kann ich die vier Werte vergleichen - die Aussagekraft ist ja jeweils eine andere und die sind alle sehr spannend.
Tut mir leid, wenn es etwas durcheinander ist! Ich probiere auch die ganze Zeit schon selber daran rum aber komme irgendwie auf keinen grünen Zweig...
Viele Grüße
Glenn

Bild

Betrifft: AW: da hast Du etwas nicht richtig aufgefasst ...
von: Glenn
Geschrieben am: 07.12.2015 08:09:26
Hallo Werner,
will nicht drängen, aber weil sonst die Antwort immer so prompt kam frage ich nochmal nach - kann man da was machen, sodass die Formel für den frühesten HABEN-Wert für die ganze Liste funktioniert?
Viele Grüße
Glenn

Bild

Betrifft: AW: inhaltliche Fortsetzung nun weiter hier ...
von: neopa C
Geschrieben am: 01.12.2015 18:35:47
Hallo Glenn,
... zu Deiner letzten Fragestellung von 15:48 nun die gewünschten weiteren zwei Formelvarianten:
zu 3.2:
=WENN(C2=0;"";WENNFEHLER(AGGREGAT(15;6;A2:A$99/(B2:B$99=B2)/(D2:D$99=C2); 1)-A2;WENN((SUMMEWENN(B:B;B2;C:C)=SUMMEWENN(B:B;B2;D:D))*(ZÄHLENWENN(B$1:B2;B2)=1); VERWEIS(9;1/(B$1:B$99=B2);A:A )-A2;"")))

zu 4.: (hier kommt anstelle VERWEIS() die Funktion INDEX() ins Spiel)

=WENN(C2=0;"";WENNFEHLER(AGGREGAT(15;6;A2:A$99/(B2:B$99=B2)/(D2:D$99=C2);1)-A2;
WENN((SUMMEWENN(B:B;B2;C:C)=SUMMEWENN(B:B;B2;D:D))*(ZÄHLENWENN(B$1:B2;B2)=1);
INDEX(A:A; AGGREGAT(15;6;ZEILE(B$1:B$99)/(B$1:B$99=B2)/(D$1:D$99>0);1))-A2;"")))
Noch ein Hinweis. wähle die Bereichsgrößen in den Formeln immer nur so groß wie absolut max. notwendig.
Momentan sind diese bei mir bis Zeile 99 beschränkt.
Gruß Werner
.. , - ...

Bild

Betrifft: AW: inhaltliche Fortsetzung nun weiter hier ...
von: Glenn
Geschrieben am: 03.12.2015 08:22:05
Hallo Werner,
3.2 funktioniert, danke.
Bei 4. mache ich offensichtlich noch etwas falsch. Ich habe die Bereichsgrößen von 99 auf 1514 erweitert, was genau der vorhandenen Zeilenanzahl entspricht. Ab Zeile 99 gibt die Formel dann nur noch dann einen korrekten Wert aus, wenn SOLL und HABEN genau übereinstimmen und alle vier Formeln somit einen identischen Wert berechnen.
Andernfalls erscheint in den Zeilen, wo frühester, größter, und spätester HABEN-Wert nicht identisch sind, die Fehlermeldung #ZAHL!
Hat das was mit der Länge der Liste zu tun?
Viele Grüße
Glenn

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Spalten kopieren,links davon einfügen"