Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Sverweis in Kombination mit Datum

Sverweis in Kombination mit Datum
15.03.2019 09:57:25
Slytha
Hallo zusammen,
ich stehe vor einem Excel Problem und komme so gar nicht weiter.
Anbei mal meine Beispieldatei.
https://www.herber.de/bbs/user/128405.xlsx
In der oberen Tabelle möchte ich den Wert aus der unteren Tabelle aus Spalte F wiedergeben.
Soweit wäre das relativ einfach mit einem Sverweis zu lösen.
Jetzt möchte ich das Ganze noch mit einem Datum verknüpfen.
Würde auch noch funktionieren, wenn in der Matrix auch jedes Datum vorkommt.
In die untere Tabelle füge ich aber nur etwas dazu wenn sich der Wert ändert.
Wenn die Kombination aus Datum und Name nicht vorhanden ist muss die Formel also den zu dem Zeitpunkt (letzten) gültigen Wert nehmen.
Immer den letzten Wert nehmen klappt aber auch nicht, da sich der Februar Wert ja nicht verändern soll wenn zu einem späteren Zeitpunkt ein neuer Wert hinzukommt.
Das Datum ist übrigens immer der erste jeden Monats.
Es gibt also keinen 15.01 o.ä. .
Habe hier schon mehrere Sachen versucht bin aber nie zum richtigen Ergebnis gekommen.
In Spalte G habe ich zur Anschauen manuell eingefügt welches Ergebnis richtig wäre.
Im Aufbau der Tabelle bin ich noch recht flexibel.
Kann also ohne Probleme Hilfsspalten einfügen wenn nötig.
Vielleicht kann mir der ein oder andere ja helfen
Vielen Dank und beste Grüße
Sebastian
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mit einer geschachtelten AGGREGAT()-Formel ...
15.03.2019 10:37:39
neopa
Hallo Sebastian,
... ist Dein angestrebtes möglich.
Meine Formel braucht auch keines spez. Formelabschluss wie eine klassische Matrixformel und kommt auch ganz ohne Deine Hilfsspalte in Spalte A aus.
In F2:
=AGGREGAT(14;6;F$15:F$99/(C$15:C$99=C2)/(B$15:B$99=AGGREGAT(14;6;B$15:B$99/(B$15:B$99&lt=B2)/(C$15:C$99=C2);1));1)
und nach unten kopieren.
Gruß Werner
.. , - ...
Anzeige
AW: Sverweis in Kombination mit Datum
15.03.2019 10:39:43
GeorgH
Hallo Sebastian,
folgende Formel in Zelle F2:
=WENNFEHLER(VERWEIS(9;1/($C$15:$C$20=$C2)/($B$15:$B$20=AGGREGAT(14;6;($B$15:$B$20)/($C$15:$C$20=$C2) /($B$15:$B$20<=$B2);1));$F$15:$F$20); "")
und runterkopieren.
(das Verketten in Spalte A ist dann auch überflüssig)
Viele Grüße
Georg
Anzeige
AW: Sverweis in Kombination mit Datum
15.03.2019 17:17:32
Slytha
Hallo,
vielen Dank euch beiden.
Grundsätzlich funktionieren beide Lösungen.
Hatte vergessen zu erwähnen, dass die Werte nicht nur aus Zahlen bestehen sondern auch Text enthalten können.
Demzufolge klappt Werners Lösung natürlich nicht, sondern nur die vom Georg.
(muss in der Originaldatei noch die Ergebnisse genau prüfen, es schaut aber sehr gut aus)
Vielen vielen Dank dafür.
Grundsätzlich würde ich aber gerne verstehen was ich da eingebe.
Die Aggregats Formel habe ich bisher noch nicht benutzt, mich aber inzwischen in die Funktionalität eingelesen.
Das ist also nachvollziehbar.
Was ich überhaupt nicht verstehe sind die ganzen "/" in euren beiden Formeln.
Was bewirken die?
Es wird doch nicht aktiv etwas geteilt, oder?
Kenne das bisher nur vom Summenprodukt.
Kann mir jemand mal die Formel von Georg genau erklären?
Möchte es das nächste Mal ja selber können :)
Danke & Grüße
Sebastian
Anzeige
AW: hierzu ...
15.03.2019 19:19:29
neopa
Hallo Sebastian,
... wenn in Spalte F auch Textwerte gefunden werden sollen, dann hättest Du dies auch schreiben sollen.
Meine Formel hätte dann z.B. in F2 wie folgt gelautet:
=VERWEIS(9;1/(C$15:C$99=C2)/(B$15:B$99=AGGREGAT(14;6;B$15:B$99/(B$15:B$99&lt=B2)/(C$15:C$99=C2);1));F$15:F$99)
Gruß Werner
.. , - ...
Anzeige
AW: hierzu ...
18.03.2019 08:18:37
Slytha
Guten Morgen Werner,
ja hatte das auch erst gemerkt, als deine Formel zwar in der Beispieldatei einwandfrei funktioniert hat, nicht jedoch in meiner Originaldatei.
Kannst du mir denn erklären was die ganzen "/" bedeuten bzw. bewirken?
Du benutzt die ja auch.
Habe das so vorher noch nie gesehen.
Danke & Grüße
Sebastian
Anzeige
AW: nun ...
18.03.2019 11:54:26
neopa
Hallo Sebastian,
... mit "/" wird dividiert und da wo der Divisor der Matrix infolge eines Bedingungsvergleiches eine 0 bzw. ein FALSCH ist, ergibt sich an dieser Stelle natürlich eine interne Fehlermeldung.
Sowohl VERWEIS() in dieser spez. Definition als auch AGGREGAT(), wenn dort das 2. Argument mit 6 definiert wurde, ignorieren derartige interne Fehlermeldungen und werten nur die Divisionen der Matrix aus, wo der jeweilige Bedingungsvergleich sich zu WAHR ergibt. Dadurch kann damit der jeweilige zutreffende Ergebniswert ermittelt werden.
Dazu schau Dir doch z.B. nur einmal ... 1/(C15:C22=C2)... an.
Gruß Werner
.. , - ...
Anzeige
AW: nun ...
18.03.2019 15:59:24
Slytha
Hallo Werner,
also teilen ist ja irgendwie logisch, aber wieso teilst du innerhalb einer Verweisfunktion?
Das mit dem ignorierend er Fehlerwerte verstehe ich auch (ist ja der große Vorteil der Aggregat Funktion).
Aber irgendwie ist mir nicht klar wie das ganze zusammenhängt.
Wenn ich deine Formel mal versuche auseinanderzunehmen:
=VERWEIS(9;1/(C$15:C$99=C2)/(B$15:B$99=AGGREGAT(14;6;B$15:B$99/(B$15:B$99

VERWEIS(9;1/(C$15:C$99=C2)

Wieso ist hier als Suchkriterium "9" angegeben?
Letztlich wird hier wahrscheinlich festgelegt nach welchen Namen gesucht werden soll.

(C$15:C$99=C2)/(B$15:B$99=AGGREGAT(14;6;B$15:B$99/(B$15:B$99

Was genau bewirkt hier, dass mehrmals dividiert wird?
Denke mal Ziel ist, dass es immer 1/1 ergibt, aber wieso?
Am Ende schaut es ja in etwa so aus: 1/1, wobei der Divisor ja vorher schon 1/1/1 ergeben muss.
Welche Auswirkungen hat es?

(C$15:C$99=C2)/(B$15:B$99=AGGREGAT(...

Welchen Sinn ergibt es gleich am Anfang Name (Spalte C) durch Datum (Spalte B) zu teilen?
Sorry das ich so viele blöde Fragen stelle, aber der "Weg" der Formel ist mir irgendwie nicht klar.
Das Ergebnis ist richtig, aber ich verstehe nicht wie Excel zu dem Ergebnis kommt.
Grüße
Sebastian
Anzeige
AW: hierzu nun ...
18.03.2019 16:52:37
neopa
Hallo Sebastian,
... hatte ich in einem anderen Forum mehrfach dazu Erläuterungen geschrieben. Leider ist dieses Forum (online-Excel) seit vorigem Jahr deaktiviert. Deshalb hab ich jetzt mal
Entscheidend ist, dass VERWEIS() eine der wenigen Funktionen ist, die Ergebnisse auch dann ermitteln kann, wenn Teile der Parameter Fehlerwerte beinhalten. Dies wird mit dem Konstrukt VERWEIS(9;1/(...);...) genutzt.
Einfach nachvollziehbar ist, dass im vorliegenden Formelbeispiel und dort der Teil (C$15:C#=C2) eine MATRIX aus Wahrheitswerten liefert. Wahrheitswerte kombiniert mit einer mathematischen Operation (egal welche) liefert numerische oder eben auch Fehlerwerte . In diesem spez. BeispielFall, weil mit 1/(C$15:C#=C2) ein Quotient gebildet wird, eine MATRIX bestehend aus "Einsen" (für 1/WAHR) und den Fehlerwerten #DIV/0! (für 1/FALSCH). Das kannst Du selbst auch mit der ExcelFunktion Formelauswertung oder nachdem Du in der Eingabezeile den entsprechenden Formelteil markiert hast, mit betätigen der Taste [F9] selbst leicht visuell nachvollziehen.
Die Funktion VERWEIS(), die bekanntlich von "hinten" (von rechts bzw. von unten) auswertet, ignoriert einfach jegliche Fehlerwerte ohne dadurch die Reihenfolge der MATRIXwerte zu ändern. Somit muß der erste Parameter der VERWEIS()-Formel (bei mir stets eine 9) lediglich ein Wert &gt1 sein, um zum gewünschten Ergebnis zu gelangen. Dies ist so, weil die erste 1 aus der der TeilMATRIX (dem Parameter "Suchvektor" von VERWEIS()) von rechts, ein Wert kleiner dem Parameter "Suchkriterium" ist und somit den "Standort" des Ergebniswertes im Parameter "Ergebnisvektor" von VERWEIS() angibt.
Die Auswertung des AGGREGAT()-Formelteil funktioniert vom Grundsatz her ähnlich. Die Mehrfachdivision der Bedingungsvergleich könnte man auch ersetzen durch im Beispiel für
=AGGREGAT(14;6;B$15:B$99/(B$15:B$99&lt=B2)/(C$15:C$99=C2);1) durch
=AGGREGAT(14;6;B$15:B$99/((B$15:B$99&lt=B2)*(C$15:C$99=C2));1)
Eine (übergeordnete) Division ist notwendig, um lediglich die Nicht-Fehlerwerte durch AGGREGAT(9 auswerten zu lassen. Ich bevorzuge die Mehrfachdivison, weil man in der alternativen Variante schnell mal die zusätzliche notwendige Klammerung vergisst, was zu falschen Ergebnis führen kann.
Bei Deiner Frage: "Welchen Sinn ergibt es gleich am Anfang Name (Spalte C) durch Datum (Spalte B) zu teilen?" kann es sich bei einem User mit Deinem angegebenen Excellevel doch nur um eine missverständliche Formelierung handeln. Denn was wird da wirklich dividiert? Doch nicht "Name" durch "Datum" sondern ... Ich denke das kannst Du jetzt selbst klären. Oder?
Gruß Werner
.. , - ...
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Sverweis mit Datum in Excel - Schritt für Schritt


Schritt-für-Schritt-Anleitung

  1. Daten vorbereiten: Stelle sicher, dass Du Deine Datentabelle mit den entsprechenden Spalten für Datum, Name und Wert hast. In diesem Beispiel nehmen wir an, dass die Daten in den Spalten A (Datum), B (Name) und C (Wert) stehen.

  2. Sverweis oder Aggregat verwenden: Wenn Du einen Wert basierend auf dem Datum und einem anderen Kriterium (z.B. Name) abrufen möchtest, kannst Du die SVERWEIS-Funktion oder die AGGREGAT-Funktion verwenden.

    Beispiel für SVERWEIS:

    =SVERWEIS(A2;B:C;2;FALSCH)

    Beispiel für AGGREGAT:

    =AGGREGAT(14;6;C$2:C$100/(B$2:B$100=E2)/(A$2:A$100<=A2);1)
  3. Formel anpassen: Wenn Du eine Fehlermeldung erhältst, weil das Datum in der Matrix nicht vorhanden ist, kannst Du die WENNFEHLER-Funktion hinzufügen:

    =WENNFEHLER(SVERWEIS(A2;B:C;2;FALSCH); "Kein Wert gefunden")
  4. Formel nach unten ziehen: Kopiere die Formel in die anderen Zellen der Spalte, um die Werte für andere Zeilen zu berechnen.


Häufige Fehler und Lösungen

  • SVERWEIS mit Datum funktioniert nicht: Achte darauf, dass das Datum im richtigen Format vorliegt. Excel erkennt Datumswerte nur, wenn sie als solche formatiert sind.

  • Fehler bei der Aggregat-Funktion: Wenn die Formel nicht funktioniert, überprüfe, ob alle Bereiche korrekt definiert sind und ob die Bedingung tatsächlich zutrifft.

  • Falsche Ergebnisse: Wenn die Formel nicht die erwarteten Werte zurückgibt, überprüfe die Logik und die Bereiche in der Formel.


Alternative Methoden

Wenn SVERWEIS oder AGGREGAT nicht funktioniert, kannst Du versuchen:

  • INDEX und VERGLEICH: Diese Kombination kann flexibler sein und funktioniert gut mit Datum.

    =INDEX(C:C;VERGLEICH(1;(A:A=A2)*(B:B=B2);0))
  • FILTER-Funktion (ab Excel 365):

    =FILTER(C:C; (A:A=A2)*(B:B=B2))

Praktische Beispiele

Nehmen wir an, Du hast folgende Daten:

Datum Name Wert
01.01.2022 Max 100
01.02.2022 Max 150
01.02.2022 Lisa 200
01.03.2022 Max 130

Um den letzten Wert für "Max" zu finden, kannst Du die AGGREGAT-Formel verwenden.


Tipps für Profis

  • Hilfsspalten verwenden: Manchmal kann es hilfreich sein, zusätzliche Spalten zu erstellen, um Zwischenergebnisse zu speichern und die Formeln einfacher zu gestalten.

  • Daten konsistent halten: Stelle sicher, dass die Daten in den Tabellen konsistent sind, insbesondere bei Datum und Formatierungen.

  • Verwendung von Named Ranges: Die Verwendung von benannten Bereichen kann die Lesbarkeit und Wartbarkeit Deiner Formeln erhöhen.


FAQ: Häufige Fragen

1. Warum funktioniert mein SVERWEIS nach Datum nicht?
Es kann sein, dass das Datum nicht im richtigen Format vorliegt oder dass der Suchbereich nicht korrekt definiert ist.

2. Was sind die Vorteile von AGGREGAT gegenüber SVERWEIS?
Die AGGREGAT-Funktion ignoriert Fehlerwerte und kann flexiblere Bedingungen verarbeiten, was sie in vielen Situationen nützlicher macht.

3. Wie kann ich sicherstellen, dass ich den letzten gültigen Wert bekomme?
Verwende die AGGREGAT-Funktion, um nach dem letzten gültigen Wert zu suchen, oder stelle sicher, dass Du die richtigen Bedingungen in Deiner Formel verwendest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige