Excel - Fehler bei doppelten Werten

D

Diegori

Gast
Hallo Excel-Freunde,

neuer Tag - neue Aufgabenstellung, die gelöst werden möchte.

Bei einer Auswertung sollen mir die Produkte mit dem längsten Zeitraum zwischen zwei Datumsangaben ausgegeben werden. Da einige Produkte nur ein Anfangsdatum haben, wird bei denen als Enddatum HEUTE() gewählt. Es kommt vor, dass Produkte das gleiche Anfangsdatum haben, daher entsteht bei meiner Auswertung der Fehler, dass Produkte doppelt aufgeführt und dafür andere ausgelassen werden.

In der angehängten Datei habe ich ein Beispiel zusammengestellt, welches das Problem verdeutlichen sollte.

Meine Formel

{=INDEX($A$2:$D$6;VERGLEICH(KGRÖSSTE(WENNFEHLER(WENN(ISTLEER($C$2:$C$6);DATEDIF($B$2:$B$6+ZEILE($B$2:$B$6)/100000;HEUTE();"d");"");0);ZEILE(A1));DATEDIF($B$2:$B$6+ZEILE($B$2:$B$6)/100000;HEUTE();"d");0);1)}

zeigt schon, dass ich es mit dem Trick "+ZEILE(...)/100000" versucht habe, um eindeutige Werte zu erhalten. Da im nächsten Schritt allerdings die vollen Tage der Datumsangaben berechnet werden, verschwinden auch die Nachkommastellen wieder.

Hat jemand eine Idee, wie ich das Problem lösen kann, ohne die Formel großartig umzubauen oder Hilfsspalten einzufügen?

Diegori
 
Zuletzt bearbeitet von einem Moderator: (geschweifte Klammern hinzugefügt)
Ich hab jetzt leider grade keinen Zugriff auf nen Rechner mit Excel, aber sowas löse ich üblicherweise am liebsten mit Array Formulas (Matrixformeln).
Falls du damit noch nie gearbeitet haben solltest - man braucht ein bisschen Zeit, um sich daran zu gewöhnen, aber dafür kann man dann Dinge in Formeln lösen, für die viele sonst VBA auspacken.
Für den Start gibt's Artikel online wie z.B. diese hier:
https://www.ablebits.com/office-addins-blog/2015/02/25/array-formulas-functions-excel/
https://www.ablebits.com/office-addins-blog/2015/03/04/excel-array-formula-examples/

Deinem Wunsch "ohne die Formel großartig umzubauen" entspricht das dann natürlich nicht, aber der mögliche Mehrwert durch Matrixformeln ist gewaltig!
 
Zuletzt bearbeitet:
Danke für deinen Vorschlag Tarkoon.

Mein Fehler war, dass ich die Formel ohne die geschweiften Klammern in meinen Beitrag kopiert habe. Dies ändere ich sofort.
 
;-) Ich muss gestehen, ich hatte die Formel gar nicht genau gelesen, sondern nur gesehen, dass es wegen der fehlenden Klammern keine Matrixformel zu sein schien...
Ergänzung ()

So, ich hab mal grade ne eigene Beispieldatei gemacht.
Musste auch basteln, aber hätte ne Lösung ohne Doppelte - sortieren und auf deine Daten anpassen kannst du dann ja noch wie gewünscht.
Ich hoffe das hilft weiter...

Du kannst ja gerade die Liste bei Schritt 1 sicherheitshalber deutlich länger machen und dann bei Schritt 2 auf die nötige Länge reduzieren, damit dir nicht was weggeschnitten wird, falls der größte Wert sehr oft vorkommt.
 

Anhänge

  • Beispiel.xlsx
    9,1 KB · Aufrufe: 312
Zuletzt bearbeitet:
Ich habe es echt versucht, aber dadurch, dass du so vieles anders gemacht hast, bekomme ich die "Anpassung an meine Daten" nicht hin.

Habe nun das Problemkind "DATEDIF" ersetzt mit "Enddatum minus Anfangsdatum" und jetzt funktioniert es. Die Formel lautet:

{=INDEX($A$2:$D$6;VERGLEICH(KGRÖSSTE(WENNFEHLER(WENN(ISTLEER($C$2:$C$6);(HEUTE()-$B$2:$B$6)+ZEILE($C$2:$C$6)/100000;"");0);ZEILE(A1));(HEUTE()-$B$2:$B$6)+ZEILE($C$2:$C$6)/100000;0);1)}

Liegt es an mir oder meinen Fragestellungen, dass ich mir in letzter Zeit nur noch selber helfe?!
 
Zuletzt bearbeitet von einem Moderator: (Lösung gefunden)
Ggf. einfach am Aufwand von doch etwas umfangreicheren "Problemen" - viele bringen da halt nicht so viel Zeit ein wie man selber...
 
Zurück
Oben