Benannten Bereich innerhalb der Indexübereinstimmung verwenden

Benannten Bereich innerhalb der Indexübereinstimmung verwenden

Ich habe einen benannten Bereich (DATA_DUMP_GROCERY), aus dem ich mithilfe der Indexübereinstimmung Werte ziehen möchte. Hier ist meine Formel:

 =INDEX(DATA_DUMP_GROCERY,MATCH(Confectionery!$B$15,DATA_DUMP_GROCERY,0),4)

Wie Sie sehen, versuche ich, mit einer Zahl anzugeben, welche Spalte verwendet werden soll, wie ich es normalerweise mache, wenn ich Index und Match zusammen verwende. Das funktioniert jedoch nicht, ich erhalte den Fehler #N/A.

Wie kann ich Werte für eine bestimmte Zeile in meinem Array herausziehen?

Antwort1

INDEX/MATCHist perfekt in der Lage, benannte Bereiche zu verwenden, die eine Datentabelle darstellen. Wenn eine 2-D-Datentabelle an der Stelle, an der Sie sie verwenden, akzeptabel ist.

Allerdings nutzt man es an zwei unterschiedlichen Orten und benötigt daher zwei unterschiedliche Dinge.

Im eigentlichen INDEX()Teil der Formel müssen Sie zunächst einen Bereich angeben, auf dem alles basiert. Das tun Sie, DATA_DUMP_GROCERYindem Sie diesen Bereich angeben. Das ist völlig in Ordnung. DATA_DUMP_GROCERYist vermutlich eine 2D-Datentabelle, also ist dies genau das, was die häufigste Verwendung INDEX()erfordert, und die Funktion ist zufrieden.

Sie geben dann jedoch denselben benannten Bereich an, MATCH()der jedoch nur eine einzige Spalte zur Prüfung benötigt. (Tatsächlich gibt es Möglichkeiten, mehrere Spalten zu erstellen, aber nicht so wie Sie.) Da Sie eine Datentabelle mit mehr als einer Spalte angegeben haben, schlägt es fehl. Dieser Fehler führt dazu, dass das Ganze fehlschlägt.

Sie können INDEX()„inside“ verwenden MATCH(), um eine einzelne Spalte aus dem benannten Bereich zu extrahieren und diese zu präsentieren MATCH(), oder Sie können einfach die Adressreferenz für die einzelne Spalte eingeben oder sogar einen anderen benannten Bereich erstellen, der diese Adresse enthält.

Meine Präferenz wäre sehr einfach: der erste Gedanke, INDEX()inside zu verwenden MATCH():

=INDEX(DATA_DUMP_GROCERY,MATCH(Confectionery!$B$15,
       INDEX( DATA_DUMP_GROCERY,,1  ,  0),4)

Einfach, da die Parameter dafür INDEX()wahrscheinlich einfach und unkompliziert sind, oder? Für ROW ist nichts erforderlich, da Sie alle Zeilen und die Spaltennummer benötigen, in der die Nachschlagedaten stehen (Spalte 1 in der obigen Formel).

Dann klappt alles ganz wunderbar.

verwandte Informationen