Nach längerer Pause benötige ich Hilfe.
Ich möchte per VBA in einer Tabelle "Quelle" mit 3 Spalten
die Zeile (mit den Feldinhalten) ermitteln, welche
den kleinsten Wert von 2 (kombinierten) Feldern "TAG" in Spalte B
und "ZEIT" in Spalte C hat.
Die Inhalte der beiden gesuchten (Min)Spalten sollen in 2 Variablen
strTag und strZeit gespeichert werden.
Dazu kommen noch 2 Bedingungen:
a) In Spalte A ("ZIEL_ID") wird eine bestimmte ID erwartet z. B. 38801460
b) Zeilen, die keinen Eintrag in dieser Spalte A haben, also leer sind,
dürfen nicht berücksichtigt werden.
------------------------------------------------------
Beispielwerte für die beiden manuell gefundenen Spalten:
20160307 (TAG, Spalte B) und 70000 (ZEIT, Spalte C) mit der Ziel_ID in Spalte A (38801460)
Das ist die gesuchte Zeile.
Die ähnliche Kombination
20160307 (Spalte B: "TAG") und 140000 (Spalte C: "ZEIT")
ist größer, soll also nicht getroffen werden, auch wenn die ZIEL_ID passen würde.
------------------------------------------------------
Eine winzige Excel-Datei habe ich hochgeladen.
https://www.herber.de/bbs/user/105472.xlsx
Die echte Datei kann über 300 000 Zeilen haben.
Im Code ist der Objektname für das Blatt Quelle "wsQuelle".
In der Variablen varZielId steht die Ziel_ID
Versuche, zumindest den kleinsten "Tag" zu ermitteln waren nicht erfolgreich.
Ein Ausschnitt meiner Versuche:
strTag = Evaluate("=MIN(IF((wsQuelle!A2:A" & lastRow & " = varZielId)*(wsQuelle!A2:A" & lastRow & "" ")), wsQuelle!B2:B" & lastRow & "))")
Zudem benötige ich als Ergebnis beide Felder: "Tag und Zeit"
Diese "Abfrage" würde dann mit unterschiedlichen ZIEL_IDs in einer Schleife ca. 70.000 mal laufen.
Kann mir jemand einen funktionierenden vba Code zukommen lassen?
Bin für jede Hilfe dankbar.
Vielen Dank und Gruss
Nikhil