Maximaler Wert der kleiner als Eingabe
#1
Hallo, 
ich probier jetzt schon länger an einem Problem herum und komm einfach nicht weiter. Mittlerweile habe ich ein Workaround aber das ist nicht elegant und braucht viiiele Hilfsspalten. Vlt könnt ihr mir ja helfen. 

Es geht darum dass ich Daten hab die eine eindeutige ID haben und die Werte zugeordnet haben. Dabei haben die Werte Timestamps und werden alle paar Jahre aktualisiert. 
Dh ich habe: ID, Thema, Timestamp, Wert

Jetzt will ich ein Jahr auswählen zB 2017 und nun sollen mir in einer Spalte alle Werte (zu einem Thema) aufgelistet werden. Die IDs stehen dabei in den Zeilen. 
Das ist noch nicht das Problem. Es kann sein, dass nicht alle IDs zu jedem Jahr Werte haben. 
Wenn ich jetzt die ID 123 hab und das Thema "Essen"  hab ich den Timestamp 01.01.2010, 01.01.2015, 01.01.2016 und 12.12.2016. 
Jetzt ist aber das Jahr 2017 ausgewählt. Da ich das Jahr nicht habe soll nun das nächst jüngste Jahr ausgewählt werden. In dem Fall die Werte von 12.12.2016. 
Mit Max() hat das nicht funktioniert, da es IDs gibt die die Jahre 2017, 2015 und 2010 habe. Wenn jetzt das Jahr 2016 ausgewählt wird soll hier die Werte vom Jahr 2015 genommen werden (also die nächst jüngsten). 

Schwieriges Thema. Ich hoff ich hab mich einigermaßen verständlich ausgedrückt. 
Es geht hier wirklich um das "nächst jüngste" Jahr zu nehmen. Wie ich die Werte mit INDEX MATCH bekomm weiß ich. 
Anbei ein kleines xls. 
lg


Angehängte Dateien
.xlsx   test111.xlsx (Größe: 25,32 KB / Downloads: 9)
Top
#2
Hallo,

ich könnte mir vorstellen, dass eine Beispielsdatei hier hilfreich wäre.

Hier findest du eine Anleitung zum Hochladen von Dateien:

http://www.clever-excel-forum.de/Thread-...ng-stellen
Gruß
Peter
Top
#3
Hab ich hinzugefügt. 
Vlt wird es dadurch verständlicher
Top
#4
Hallo lili,

einige Fragen;

1) Kann es für eine ID in einem Jahr mehrere Themen geben?
2) Falls ja, soll der Wert des Vorjahres für alle Themen genommen werden falls für das angewählte Jahr kein Wert vorhanden ist?
3) Kann es für eine ID und eine Thema in einem Jahr mehrere Werte geben?
4) Wieviele Themen gibt es und können sie in den Spaltenüberschriften schon eingetragen sein?
5) Wieviele Zeilen hat die auszwertende Liste?
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Top
#5
(28.02.2017, 18:32)lili schrieb: Hab ich hinzugefügt. 
Vlt wird es dadurch verständlicher

Hallo, mit einer Hilsspalte wird es fast zu einfach... und für das Jahr 2017 gibt's keine zu erwartenden Ergebnisse in deiner Datei... oder hast du noch versteckte Werte irgendwo..?
Gruß Jörg
stolzes Mitglied im ----Excel-Verein
Freund einer excellenten Power Query-Abfrage
Top
#6
@Egon. 

1: Ja eine ID kann mehrere Themen pro Jahr haben 
2: Falls für ein Jahr kein Wert vorhanden ist, dann nimm den nächst aktuellen Wert. Also JA, dann den Wert aus dem Vorjahr nehmen. 
3: Ja es kann für eine ID und einem Thema mehrmals in einem Jahr Werte geben. Dann soll immer der aktuelleste (Max()) genommen werden 
4: Das xls ist nur ein bsp. Es gibt ca 35 Themen
5: Die Liste hat ca 25000 Zeilen 

lg :)
Top
#7
@Jockel 
Ich fand Hilfsspalten net unbedingt einfach aber hilfreich ::)
Wie gesagt, die würde ich gerne loswerden. 

Nein für das Jahr 2017 gibt es keine Wert in dieser Bsp Datei! Dh Wenn 2017 eingetragen ist, soll der nächst aktuellste Wert genommen werden.
Top
#8
Hallo lili,

was sind für dich viele Hilfsspalten?
Kann man die Liste sortiert bekommen?

Da du ja die Lösung mit Index und Vergleich schon kennst, kann ich dir formelmässig nichts neues anbieten.
Man benötigt hierfür eine sortierte Liste und  auch 2 Hilfsspalten (zur alphanumerischen Sortierung der ID und des Datums).

Man könnte in einer sortierten Liste die Auswahl schon in der Liste durchführen und benötigt nur eine Hilfsspalte.

Ohne Hilfsspalten ginge es für mich nur mit VBA.

Da bin ich wohl raus.
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Top
#9
Sorry,

es geht doch ohne Hilfsspalte auf einer sortierten Liste. In Zelle E2:

Code:
{=WENNFEHLER(INDEX('Vorhanden '!$C$2:$C$11;VERGLEICH(999;1/(('Vorhanden '!$A$2:$A$11=$D2)*('Vorhanden '!$B$2:$B$11=E$1)*('Vorhanden '!$A$2:$A$11<DATUM($B$1+1;1;1)));1));"")}

Die geschweiften Klammern werden nicht mit eingegeben, sondern die Bearbeitung der Formel mit Strg+Shift+Enter abgeschlossen. (Matrixformel)
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Top
#10
Hallo,

als Erstes solltest Du mal die Leerzeichen hinter ALLEN vorhandenen Worten entfernen und aus den Datumswerten echte Zahlen machen, sonst funktioniert keine Formel!!!!!


.xlsx   test111-1.xlsx (Größe: 10,19 KB / Downloads: 4)

Das geht auch ohne sortierte Liste und Matrixformel!
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste