Letzer Eintrag eines Suchstrings in Tabelle ermitteln
Hallo zusammen,
ich möchte in der Tabelle "Einkauf.xlsx" über das Einkaufsdatum den letzten Preis ermitteln (per VBA)
Hat vielleicht jemand eine Idee, wie sich das bewerkstelligen lässt?
Hier mal ein Beispiel:
Danke im Voraus
ich möchte in der Tabelle "Einkauf.xlsx" über das Einkaufsdatum den letzten Preis ermitteln (per VBA)
Hat vielleicht jemand eine Idee, wie sich das bewerkstelligen lässt?
Hier mal ein Beispiel:
Danke im Voraus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 625239
Url: https://administrator.de/contentid/625239
Ausgedruckt am: 22.11.2024 um 03:11 Uhr
3 Kommentare
Neuester Kommentar
Bedenke auch, dass am letzten Tag auch mehrere Artikel gekauft sein könnten.
Du hast drei Varianten:
1) (Manuell oder per Script) Du sortierst die Einträge nach Spalte B absteigend, somit ist der gesuchte Eintrag immer ganz oben bzw in Zeile 2.
2) (Per Script) Du durchsuchst Spalte B nach dem jüngsten Eintrag und merkst dir die Zeilennummer und liesst die anderen Daten in dieser Zeile aus.
3) (Per Zeilenformel) https://www.extendoffice.com/documents/excel/3333-excel-find-earliest-da ...
Du hast drei Varianten:
1) (Manuell oder per Script) Du sortierst die Einträge nach Spalte B absteigend, somit ist der gesuchte Eintrag immer ganz oben bzw in Zeile 2.
2) (Per Script) Du durchsuchst Spalte B nach dem jüngsten Eintrag und merkst dir die Zeilennummer und liesst die anderen Daten in dieser Zeile aus.
3) (Per Zeilenformel) https://www.extendoffice.com/documents/excel/3333-excel-find-earliest-da ...
Dafür brauchst du kein VBA, das geht mit Array-Formeln:
Zelle B17
Zelle C17
Beide mit
In neueren Excel Versionen ab Excel 2016 kann man sich der Formel MAXIFS bedienen die das noch simpler macht.
Beachte "Tabelle1" und die "Überschriften" musst du an deine Gegebenheiten anpassen. Da du hier eine "echte" Tabelle und keinen Bereich verwendest gilt nicht der Name des Tabs sondern der vergebene Name im Ribbon:
Zelle B17
=MAX(WENN(Tabelle1[Artikel]=A17;Tabelle1[Einkaufsdatum]))
=INDEX(Tabelle1[Einkaufspreis];VERGLEICH(1;(A17=Tabelle1[Artikel])*(B17=Tabelle1[Einkaufsdatum]);0))
CTRL+SHIFT+ENTER
abgeschlossen. Fertig.In neueren Excel Versionen ab Excel 2016 kann man sich der Formel MAXIFS bedienen die das noch simpler macht.
Beachte "Tabelle1" und die "Überschriften" musst du an deine Gegebenheiten anpassen. Da du hier eine "echte" Tabelle und keinen Bereich verwendest gilt nicht der Name des Tabs sondern der vergebene Name im Ribbon: