2014-01-27 10 views
5

Für die folgende Tabelle auf Formular,VLOOKUP von 2 Säulen Kombination einen eindeutigen Schlüssel

excel table

Ich möchte den Wert in Spalte C. Da die Werte in Spalte A und Spalte B zu sehen sind nicht einzigartig , SVERWEIS schlägt fehl. Zum Beispiel VLOOKUP (1, Tabelle 3) liefert 5 und nie 1.

jedoch die Kombinationen von cols A & B einzigartig sind. Zum Beispiel 1blah = 5, während 1foo = 1.

Wie kann ich die Kombination von cols A & B als eindeutigen Schlüssel verwenden, um den entsprechenden Wert in Spalte C zurückzugeben?

Ich bin mir nicht sicher, ob dies mit Arbeitsblattfunktionen oder einer benutzerdefinierten VBA-Funktion implementiert werden soll. Ich habe versucht, CONCATENATE zu verwenden, um den eindeutigen Schlüssel zu generieren, aber das hat nicht funktioniert, da dies zu Kombinationen von Zahlen und Zeichenfolgen führt.

Antwort

5

können Sie eine Matrixformel verwenden:

=INDEX($C$1:$C$7,MATCH("1foo",$A$1:$A$7 & $B$1:$B$7,0)) 

wählen Sie einfach in Beispiel D1, Formel in Bearbeitungsleiste ein, und drücken CTRL + SHIFT + ENTER es

+0

Ich weiß nicht im Voraus, was die Daten in Spalte A und B sein werden. Würde Ihre Lösung noch funktionieren? – jmaz

+0

Es wird funktionieren. dh Sie haben '1' in' F1' und 'foo' in' F2', dann können Sie '= INDEX (C1: C7, MATCH (F1 & F2, $ A $ 1: $ A $ 7 & $ B $ 1: $ B $ 0)) ' –

+0

also, funktioniert es für Sie oder Sie haben einige Probleme? –

1

Die bewerten So wie ich es normalerweise durch Verketten der Werte mache, die durch ein Pipe-Zeichen (|) getrennt sind. Siehe die Formel im Screenshot unten.

=A1&"|"&B1

Dann können Sie vlookup die verketteten Schlüssel.

=VLOOKUP("1|foo",$C$1:$D$7,2,FALSE) 
+0

Funktioniert nicht ganz für mich. Die Anweisungen für den SVERWEIS-Status: "Standardmäßig muss die Tabelle in aufsteigender Reihenfolge sortiert sein." Meins ist nicht, und kann nicht, da ich nicht vorher weiß, was die Daten sein werden (es wird vom Benutzer eingegeben). Ich bekomme somit die letzte Instanz unabhängig vom eindeutigen Schlüssel. – jmaz

+1

Das gilt nur, wenn Sie als letztes Argument von vlookup "true" übergeben. Wir benutzen hier falsch. – Tmdean

+0

Ich bekomme # N/A, wenn ich die FALSE einschließe, und die letzte Instanz, wenn nicht. – jmaz

0

Sie können SVERWEIS verwenden, wenn Ihr Lookup-Wert eine Verkettung Ihrer zwei oder mehr Schlüsselfelder (A2 & B2). Fügen Sie dann eine erste sortierte Spalte in Ihrem LUT-Blatt mit dem Array hinzu, das die Verkettung derselben Schlüsselfelder darstellt. Viola.

Verwandte Themen