Vergleichen Sie zwei Listen und zeigen Sie fehlende Elemente in einer Google-Tabelle an

9

Ich versuche eine Lösung zu finden, um zwei separate Listen (eingeladen - besucht) zu vergleichen und eine dritte Liste zu erstellen (nicht vorhanden).

Die Funktion muss auf den Schlüssel in "Besuchte Liste (D, E, F)" schauen und ihn mit dem Schlüssel in "Eingeladene Liste (A, B, C)" vergleichen und dann fehlende Werte in "Abwesende Liste (G, H" anzeigen) ,ICH)".

Über die Daten

  • Der Schlüssel ist ein eindeutiger Wert, der jeder eingeladenen Person zugewiesen wird.
  • Die Daten in "Eingeladene Liste (A, B, C)" bestehen aus QUERY-Daten.
  • Die Daten in "Attended List (D, E, F)" kopieren / fügen Werte in die Zellen ein.

Beispiel für das gewünschte Ergebnis

Invitded List (A,B,C)      Attended List (D,E,F)       Absent List (G,H,I)
 A      B       C            D      E       F            G      H        I
Key | Fname | Lname       | Key | Fname | Lname       | Key  | Fname | Lname
------------------------------------------------------------------- 
001   Tim     Smith         002  Mike     Jones         001    Tim     Smith
002   Mike    Jones         004  Jenny    Johnson       003    Amy     Wilson
003   Amy     Wilson
004   Jenny   Johnson

Jede Unterstützung wird sehr geschätzt.

Herr B.
quelle
Warum erledigt vlookup den Job nicht für Sie?
Rahi
@rahi Danke, dass du dir das angesehen hast. vlookup könnte funktionieren, können Sie mir bitte eine Richtung geben?
Herr B

Antworten:

2

Sie könnten so etwas versuchen:

=if(countif(D:D,A2)=0,A2,"")  

dann kopieren Sie nach Bedarf hin und her.

COUNTIF

pnuts
quelle
Dies funktioniert als Teilergebnis, da leere Zeichenfolgen zurückgegeben werden, die entfernt werden sollten, um das gewünschte Endergebnis zu erhalten.
Rubén
6

Formel

=ArrayFormula(FILTER(A4:C7,ISERROR(match(A4:A7,D4:D5,0))))

Erläuterung

MATCH gibt einen Fehler zurück, wenn die Einladung nicht in der Anwesenheitsliste angezeigt wird. ISERROR konvertiert Fehler in TRUE und Werte in FALSE. Dieses Ergebnis wird als Filterkriterium verwendet. Das Ergebnis ist die Liste der Abwesenheiten:

|   001 |Tim       |Smith
|   003 |Amy       |Wilson

Fügen Sie einfach die richtigen Überschriften über der Formel hinzu

Rubén
quelle
0

VLOOKUP ist eine weitere Möglichkeit, die gewünschte Antwort zu erhalten, aber ich bin mir nicht sicher, ob sie so dargestellt wird, wie Sie es möchten.

Aus dem Google Sheets-Hilfeartikel VLOOKUP,

Durchsucht die erste Spalte eines Bereichs nach einem Schlüssel und gibt den Wert einer angegebenen Zelle in der gefundenen Zeile zurück.

Wenn Sie also eine StatusSpalte zu Ihrer Teilnehmerliste hinzufügen, können Sie die Spalte für VLOOKUPdie eingeladene Liste ausführen und sie auffordern, den AttendedStatus zurückzugeben.

Ihre Daten könnten ungefähr so ​​aussehen:

Vor dem VLOOKUP

In Zelle D2 VLOOKUPwürde Ihre Formel folgendermaßen aussehen:

=VLOOKUP(A2, E:H, 4, FALSE)

  • A2 ist der Schlüssel
  • E:H ist der Bereich (die Teilnehmerliste)
  • 4bezieht sich auf die Spaltennummer im Bereich des Wertes, den Sie zurückgeben möchten
  • FALSE zeigt an, dass Sie nach einer genauen Übereinstimmung für den Schlüssel suchen

Wenn Sie die Formel von Zelle D2 bis D5 ausfüllen, erhalten Sie folgende Daten:

Nach VLOOKUP

Wo es eine Übereinstimmung gab, wird der StatusWert gezogen. Wo es keine Übereinstimmung gibt, sehen Sie eine #N/A.

rahi
quelle
Dies funktioniert als Teilergebnis und gibt Fehler zurück, die zum späteren Filtern der eingeladenen Liste verwendet werden können, um das gewünschte Endergebnis zu erhalten.
Rubén
0

Einzelllösung:

Wenn Sie die FILTERFunktion mit der COUNTIFFunktion kombinieren, erhalten Sie die gewünschte Liste:

=FILTER(A:C,COUNTIF(D:D,A:A)=0))

In diesem Beispiel habe ich den Schlüssel als Übereinstimmungsfeld verwendet, um Spalte A mit Übereinstimmungen in D zu vergleichen, aber es funktioniert auch mit den anderen Spalten.

AVW
quelle