Antwort1
Der Kommentar von Mark Fitzgerald
geht in die richtige Richtung, ist aber noch nicht ganz da.
Der richtige Teil besteht darin, dass der vierte Parameter weder angegeben noch als FALSE angegeben ist.
Wenn es nicht angegeben wird, ist es standardmäßig TRUE. Es ist auch TRUE, wenn es als TRUE angegeben wird. So oder so stoßen Sie auf das hier angezeigte Problem, aber hier passiert noch etwas anderes, das genau das unglückliche Ergebnis verursacht, das Sie erhalten.
Bevor ich darauf eingehe, sollte ich darauf hinweisen, dass Sie bei einer Verwendung wie Ihrer eindeutig eine exakte Übereinstimmung benötigen, um korrekte Ergebnisse zu erzielen. Sie müssen also den vierten Parameter hinzufügen und ihn auf FALSE setzen, damit nach einer exakten Übereinstimmung gesucht wird. Das zugrunde liegende Problem, das ich gleich ansprechen werde, spielt dann keine Rolle mehr, was ein Vorteil ist.
Das eigentliche Problem besteht darin, wie Sie Excel mitteilen, welchen Bereich es für die Suche verwenden soll: der zweite Parameter. Sie verwenden C:V
diesen, um Excel anzuweisen, jede einzelne Zelle in diesen Spalten zu verwenden. Es gibt VIELE Gründe, dies NICHT zu tun, aber der entscheidende Grund hängt hier mit dem Wert TRUE für den vierten Parameter zusammen.
Wenn dies WAHR ist, teilt uns Microsoft VLOOKUP()
(und einige andere Funktionen beim Nachschlagen, wenn keine exakte Übereinstimmung erwartet wird) mit, dass die Daten durchsucht werden, bis eine Zelle gefunden wird, die „größer als“ der Nachschlagewert ist, dann angehalten wird und der Wert DIREKT VOR diesem „größer als“-Wert zurückgegeben wird. Ich möchte darauf hinweisen, dass dies nicht ganz der Wahrheit entspricht, aber für Ihr Problem ist es nah genug dran.
Aufgrund ihrer Behauptungen suggerieren sie, dass korrekte Ergebnisse nur dann auftreten, wenn die Nachschlagespalte (hier Spalte C) vom niedrigsten Wert zum höchsten Wert („AZ“) sortiert ist. Und das wird wahrscheinlich fast immer funktionieren, sogar in Ihrem Fall (aber wahrscheinlich zu 99,99 %). Leider können viele Leute diese Sortierung einfach nicht durchführen, ohne eine andere Funktionalität ihrer Daten zu beeinträchtigen. Die meisten möchten einfach, dass die Daten nach anderen Bedingungen sortiert werden, und können nicht nach der Nachschlagespalte sortieren.
Was passiert also mit Ihnen? Die Suche sucht in Spalte C nach „CA-was auch immer“. Aber … sie beginnt mit der Spaltenüberschrift in Zelle C1. Diese Überschrift lautet „Barcode“ … und so weit, so gut. Dann findet sie in Zelle C2 etwas, das „größer als“ der Nachschlagewert ist (der mit „CA“ beginnt). Nehmen wir an, sie findet in Zelle C2 etwas, das alphabetisch sowohl nach diesem als auch nach der Überschrift steht. Sie stoppt sofort und „kehrt“ zur Überschriftenzelle zurück. Das ist Zeile 1 im Bereich, und sie liest nach rechts in Spalte S und findet „Raum“ in dieser Zelle (S1). Das ist das Ergebnis.
Wenn C2 alphabetisch nicht hinter dem Nachschlagewert läge, hätte es in Wahrheit sicherlich etwas gefunden, das lange vor Erreichen von C380 lag, und wäre an diesem früheren Punkt stehen geblieben, eine Zeile zurückgegangen und hätte den Wert der Spalte S dieser Zeile zurückgegeben. Das wäre AUCH falsch gewesen, aber vielleicht nicht so offensichtlich falsch, dass Sie es bemerkt hätten. Schließlich würde es etwas normal aussehenden Raum geben. Alles könnte gut aussehen. Und dennoch könnten JETZT GERADE leicht 4 oder 32 oder sogar 200-300 falsche Werte vorhanden sein.
Wie ich am Anfang erwähnt habe, benötigen Sie ohnehin genaue Übereinstimmungen. Fügen Sie der Suche also den vierten Parameter hinzu. Verwenden Sie FALSE
, nicht TRUE
. FALSE erzwingt die Suche nach einer genauen Übereinstimmung.
Da das Problem vor über zwei Jahren gepostet wurde, ist es wahrscheinlich, dass Sie es auf die eine oder andere Weise gelöst haben. Aber vielleicht ist dies für jemand anderen von Nutzen, jemanden, der es vielleicht hilfreich findet, sogar um das Hinzufügen von Ergebnissen mit anderen Funktionen zu erklären, die angeblich so funktionieren, wie MS sagt, aber wirklich so funktionieren, wie ich es gesagt habe, obwohl mein Ansprechen nur einen kleinen Teil des gesamten Themas darstellt! Aber jede Funktion, die Nachschlagevorgänge durchführt, kann darauf stoßen. MATCH()
und XMATCH()
sogar die neue XLOOKUP()
Funktion. Zugegeben, die neueren Funktionen stoßen nur darauf, wenn sie nicht exakte Übereinstimmungen verwenden, aber da sie das tun und die Leute sie auf diese Weise verwenden ... Und es gibt andere Fälle, in denen dies auftritt.