2016-08-04 48 views
1

Ich möchte den Wert basierend auf Index/Übereinstimmung Where-Klausel gilt.Index Übereinstimmung, wo Klausel gilt

==> Barcode-Nummer finden, wo Preis = 10 (das ist variabel) UND Geschmack = Leidenschaft.

Bisher es gibt nur den Barcode der ersten Reihe mit "10", dass es also Barcode 1 anstelle von 2.

= IF (ISERROR (INDEX (F findet: F, MATCH (B2, I: I, 0))) "" INDEX (F: F, MATCH (B2, I: I, 0)))

Sample

Ergebnis bisher:

enter image description here

Kann jemand beraten? Danke!

+0

Ich bezweifle, dass Sie dies nur mit einer Excel-Formel erreichen können (wenn die Anzahl der zurückzugebenden Barcodes variiert). Möglicherweise müssen Sie hierfür eine benutzerdefinierte Funktion implementieren. – Ralph

+0

Ah :(Ja, Barcode-Nummer könnte entweder 1,2,3 sein ... Hatte gehofft, von einer UDF wegzukommen! – Aurax22

+0

Das gleiche hier: Ich versuche, UDFs zu vermeiden, wann immer ich kann.Wie wäre es mit einem Makro erstellen und es ausführen nur Nachfrage? Vielleicht muss es nicht "Leben" sein und es würde ausreichen, einen Knopf zu drücken, um alle relevanten Barcodes zu suchen und abzurufen? – Ralph

Antwort

2

Ja, es ist möglich, eine Array-Formel zu verwenden (drücken Sie Strg + Enter anstelle von Enter). Zum Beispiel:

=INDEX(F:F, MATCH("Passion"&10,G:G&I:I,0)) 

"Passion" = 1. Kriterien, 10 = 2. Kriterien
(diese können durch einen Zellbezug ersetzt werden, wenn die Kriterien gespeichert werden)
G: G = 1. Kriterien reichen, I: I = 2. Kriterien reichen

Auf Nebenbei bemerkt, würde ich die IFERROR() Formel vorschlagen statt IF (ISERROR()), damit es ordentlich und ordentlich aussieht.

+1

Ich würde auch darauf hinweisen, dass die Website unten erklären wird, was war mit der Formel oben: http://www.cpearson.com/excel/TablesAndLookups.aspx –

+0

@BryanDavies - Arbeitete wie ein Charme für den If (IsError) danke das du darauf hingewiesen hast ...! – Aurax22