Excel-Formel: Verbinden Sie Tabellen mit INDEX und MATCH -

Inhaltsverzeichnis

Generische Formel

=INDEX(data,MATCH(lookup,ids,0),2)

Zusammenfassung

Zum Verbinden oder Zusammenführen von Tabellen mit einer gemeinsamen ID können Sie die Funktionen INDEX und MATCH verwenden. In dem gezeigten Beispiel lautet die Formel in E5:

=INDEX(data,MATCH($C5,ids,0),2)

Dabei ist "Daten" der benannte Bereich H5: J8 und "IDs" der benannte Bereich H5: H8.

Erläuterung

Diese Formel zieht den Kundennamen und -status aus der Kundentabelle in die Auftragstabelle. Die MATCH-Funktion wird verwendet, um den richtigen Kunden zu finden, und die INDEX-Funktion wird verwendet, um die Daten abzurufen.

Kundennamen abrufen

Die MATCH-Funktion wird von innen nach außen verwendet, um eine Zeilennummer wie die folgende zu erhalten:

MATCH($C5,ids,0)

  • Der Suchwert ist die Kunden-ID in C5, bei der es sich um eine gemischte Referenz handelt, wobei die Spalte gesperrt ist, sodass die Formel leicht kopiert werden kann.
  • Das Lookup-Array besteht aus den benannten Bereichs-IDs (H5: H8), der ersten Spalte in der Kundentabelle.
  • Der Übereinstimmungstyp wird auf Null gesetzt, um eine genaue Übereinstimmung zu erzwingen.

Die MATCH-Funktion gibt in diesem Fall 2 zurück, das als Zeilennummer in INDEX eingeht:

=INDEX(data,2,2)

Wenn die Spaltennummer fest als 2 codiert ist (Kundennamen befinden sich in Spalte 2) und das Array auf den benannten Bereich "Daten" (H5: J8) eingestellt ist, gibt INDEX Folgendes zurück: Amy Chang.

Kundenstatus abrufen

Die Formel zum Abrufen des Kundenstatus ist nahezu identisch. Der einzige Unterschied besteht darin, dass die Spaltennummer fest als 3 codiert ist, da Statusinformationen in der 3. Spalte angezeigt werden:

=INDEX(data,MATCH($C5,ids,0),2) // get name =INDEX(data,MATCH($C5,ids,0),3) // get state

Dynamisches Zwei-Wege-Match

Durch Hinzufügen einer weiteren MATCH-Funktion zur Formel können Sie eine dynamische Zwei-Wege-Übereinstimmung einrichten. Mit dem benannten Bereich "Header" für H4: J4 können Sie beispielsweise eine Formel wie die folgende verwenden:

=INDEX(data,MATCH($C5,ids,0),MATCH(E$4,headers,0))

Hier wurde eine zweite MATCH-Funktion hinzugefügt, um die richtige Spaltennummer zu erhalten. MATCH verwendet den aktuellen Spaltenkopf in der ersten Tabelle, um die richtige Spaltennummer in der zweiten Tabelle zu finden, und gibt diese Nummer automatisch an INDEX zurück.

Interessante Beiträge...