Ich habe ein Blatt, das ungefähr wie folgt aussieht:
A B C D E (DESIRED RESULT, F)
TIME1 IP_ADDRESS1 TIME1 IP_ADDRESS1 DOMAIN1 DOMAIN1
TIME2 IP_ADDRESS2 TIME2 IP_ADDRESS2 DOMAIN2 DOMAIN2
TIME3 IP_ADDRESS3 TIME3 IP_ADDRESS3 DOMAIN3 DOMAIN3 / DOMAIN4
TIME3 IP_ADDRESS1 TIME3 IP_ADDRESS3 DOMAIN4 -
TIME3 IP_ADDRESS2 TIME4 IP_ADDRESS4 DOMAIN5 -
TIME4 IP_ADDRESS4 TIME5 IP_ADDRESS5 DOMAIN6 DOMAIN5
TIME5 IP_ADDRESS5 TIME5 IP_ADDRESS6 DOMAIN7 -
Ich habe mir den Kopf zerbrochen und versucht, Folgendes zu lösen:
Wenn die Zeit in Spalte A mit einer Zeit in Spalte C übereinstimmt, dann prüfe, ob die IP-Adresse in Spalte B auch in Spalte D steht, und gib dann die übereinstimmende Domäne in Spalte F zurück.
Beispielsweise wird im obigen Arbeitsblatt DOMAIN1 zuerst zurückgegeben, da die Zeit und die Domäne in beiden Spaltensätzen übereinstimmen. DOMAIN3 / DOMAIN4 wird zurückgegeben, da es zwei Domänen mit derselben Zeit UND IP-Adresse gibt. Hoffentlich ergibt das Sinn.
Ich habe verschiedene INDEX-, MATCH-, VLOOKUPS-Funktionen usw. ausprobiert, aber ich kriege es einfach nicht hin.
Ich wäre für jede Hilfe dankbar ...
Antwort1
Wenn ich das richtig verstanden habe, sollte Ihre letzte Zeile im Ergebnis DOMAIN6 enthalten und Sie können dies mit der folgenden Formel tun:
=TEXTJOIN(" / ",TRUE,IFERROR(FILTER($E$2:$E$8,($C$2:$C$8=$A2)*($D$2:$D$8=$B2)),"-"))
Mit anderen Worten: Filtern Sie alle Zeilen für Spalte E, bei denen der entsprechende Wert in Spalte C mit der aktuellen Zeile in Spalte A und der entsprechende Wert in Spalte D mit der aktuellen Zeile in Spalte B übereinstimmt.
Wenn das FILTER
nichts zurückgibt, geben Sie einfach einen Bindestrich zurück.
Bei Arrays, die mehr als ein Element enthalten, verbinden Sie diese mit dem angegebenen Trennzeichen.