2016-11-21 3 views
1

Ich habe eine Liste von Benutzern und deren Sitzungs-IDs. Ich muss die eindeutigen Sitzungs-IDs für jeden Benutzer extrahieren, wobei vorzugsweise eine Formel verwendet wird.Excel, extrahiere eindeutige Werte aus einer Spalte basierend auf der Beziehung zwischen zwei Spalten

Ich habe ein vereinfachtes Bild von dem, was ich versuche, unten zu erreichen.

Ich habe folgende Array versucht, ..., aber es die Ausgabe an einen bestimmten Benutzer nicht begrenzen ...

{=INDEX(session_ids, MATCH(0, COUNTIF(D$1:D1, session_ids),0))} 

enter image description here

Wenn jemand eine Kenntnissen auf dem Abschnitt der aufweist Formel, die ich vermisse, wäre jede Hilfe dankbar!

Vielen Dank

Antwort

2

Ihre Formel berücksichtigt nicht den Benutzernamen. Sie müssen Sitzungs-IDs mit übereinstimmendem Benutzernamen filtern.

=INDEX(IF(user_id="user2",session_ids,""), MATCH(0, COUNTIF(D$1:D1, IF(user_id="user2",session_ids,"")),0)) 

EDIT

OP-Lösung ist besser als das, was ich kam mit, wie es ein gefiltertes Array vermeidet creatting, die durch die IF-Funktion (zweimal) in meiner Formel erfolgt. Hier ist die effizientere Formel leicht modifiziert in Übereinstimmung mit meiner Formel:

=IFERROR(INDEX(session_ids, MATCH(0, IF(user_id="user2", COUNTIF(D$1:D1, session_ids)),0)),"") 
+0

Wie vergleicht dies mit einer anderen Lösung, die ich vor ein bisschen herkam? '= IFERROR (INDEX (Sitzung_IDs, MATCH (0, IF (Benutzer_ID = E1, COUNTIF (D $ 1: D1, Session_IDs)), 0))," ")' gibt es eine, die besonders gut in der Verarbeitung ist? Oder hat eine der beiden eine Chance auf Fehler? – Procyclinsur

+0

Das habe ich verpasst. Deines ist besser und wird schneller verarbeiten! – eshwar

+0

können Sie Ihre Antwort mit meiner Formel als alternative Möglichkeit zur Erstellung der Antwort aktualisieren. Ich möchte Ihnen die Punkte für Ihre Hilfe und für die Informationen zur Verarbeitung geben – Procyclinsur

Verwandte Themen